drivers/net/wireless/realtek/rtw88/sdio.h

Source file repositories/reference/linux-study-clean/drivers/net/wireless/realtek/rtw88/sdio.h

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/realtek/rtw88/sdio.h
Extension
.h
Size
6063 bytes
Lines
179
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct rtw_sdio_tx_data {
	u8 sn;
};

struct rtw_sdio_work_data {
	struct work_struct work;
	struct rtw_dev *rtwdev;
};

struct rtw_sdio {
	struct sdio_func *sdio_func;

	u32 irq_mask;
	u8 rx_addr;
	bool sdio3_bus_mode;

	void *irq_thread;

	struct workqueue_struct *txwq;
	struct rtw_sdio_work_data *tx_handler_data;
	struct sk_buff_head tx_queue[RTK_MAX_TX_QUEUE_NUM];
};

extern const struct dev_pm_ops rtw_sdio_pm_ops;

int rtw_sdio_probe(struct sdio_func *sdio_func,
		   const struct sdio_device_id *id);
void rtw_sdio_remove(struct sdio_func *sdio_func);
void rtw_sdio_shutdown(struct sdio_func *sdio_func);

static inline bool rtw_sdio_is_sdio30_supported(struct rtw_dev *rtwdev)
{
	struct rtw_sdio *rtwsdio = (struct rtw_sdio *)rtwdev->priv;

	return rtwsdio->sdio3_bus_mode;
}

#endif

Annotation

Implementation Notes