drivers/net/wireless/rsi/rsi_usb.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/rsi/rsi_usb.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/rsi/rsi_usb.h- Extension
.h- Size
- 2487 bytes
- Lines
- 86
- 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.
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/usb.hrsi_main.hrsi_common.h
Detected Declarations
struct rx_usb_ctrl_blockstruct rsi_91x_usbdevfunction rsi_usb_check_queue_statusfunction rsi_usb_event_timeout
Annotated Snippet
struct rx_usb_ctrl_block {
u8 *data;
struct urb *rx_urb;
struct sk_buff *rx_skb;
u8 ep_num;
};
struct rsi_91x_usbdev {
void *priv;
struct rsi_thread rx_thread;
u8 endpoint;
struct usb_device *usbdev;
struct usb_interface *pfunction;
struct rx_usb_ctrl_block rx_cb[MAX_RX_URBS];
u8 *tx_buffer;
__le16 bulkin_size[MAX_BULK_EP];
u8 bulkin_endpoint_addr[MAX_BULK_EP];
__le16 bulkout_size[MAX_BULK_EP];
u8 bulkout_endpoint_addr[MAX_BULK_EP];
u32 tx_blk_size;
u8 write_fail;
struct sk_buff_head rx_q;
};
static inline int rsi_usb_check_queue_status(struct rsi_hw *adapter, u8 q_num)
{
/* In USB, there isn't any need to check the queue status */
return QUEUE_NOT_FULL;
}
static inline int rsi_usb_event_timeout(struct rsi_hw *adapter)
{
return EVENT_WAIT_FOREVER;
}
void rsi_usb_rx_thread(struct rsi_common *common);
#endif
Annotation
- Immediate include surface: `linux/usb.h`, `rsi_main.h`, `rsi_common.h`.
- Detected declarations: `struct rx_usb_ctrl_block`, `struct rsi_91x_usbdev`, `function rsi_usb_check_queue_status`, `function rsi_usb_event_timeout`.
- Atlas domain: Driver Families / drivers/net.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.