drivers/net/wireless/rsi/rsi_mgmt.h

Source file repositories/reference/linux-study-clean/drivers/net/wireless/rsi/rsi_mgmt.h

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/rsi/rsi_mgmt.h
Extension
.h
Size
21583 bytes
Lines
759
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 rsi_mac_frame {
	__le16 desc_word[8];
} __packed;

#define PWR_SAVE_WAKEUP_IND		BIT(0)
#define TCP_CHECK_SUM_OFFLOAD		BIT(1)
#define CONFIRM_REQUIRED_TO_HOST	BIT(2)
#define ADD_DELTA_TSF			BIT(3)
#define FETCH_RETRY_CNT_FROM_HOST_DESC	BIT(4)
#define EOSP_INDICATION			BIT(5)
#define REQUIRE_TSF_SYNC_CONFIRM	BIT(6)
#define ENCAP_MGMT_PKT			BIT(7)
#define DESC_IMMEDIATE_WAKEUP		BIT(15)

struct rsi_xtended_desc {
	u8 confirm_frame_type;
	u8 retry_cnt;
	u16 reserved;
};

struct rsi_cmd_desc_dword0 {
	__le16 len_qno;
	u8 frame_type;
	u8 misc_flags;
};

struct rsi_cmd_desc_dword1 {
	u8 xtend_desc_size;
	u8 reserved1;
	__le16 reserved2;
};

struct rsi_cmd_desc_dword2 {
	__le32 pkt_info; /* Packet specific data */
};

struct rsi_cmd_desc_dword3 {
	__le16 token;
	u8 qid_tid;
	u8 sta_id;
};

struct rsi_cmd_desc {
	struct rsi_cmd_desc_dword0 desc_dword0;
	struct rsi_cmd_desc_dword1 desc_dword1;
	struct rsi_cmd_desc_dword2 desc_dword2;
	struct rsi_cmd_desc_dword3 desc_dword3;
};

struct rsi_boot_params {
	__le16 desc_word[8];
	struct bootup_params bootup_params;
} __packed;

struct rsi_boot_params_9116 {
	struct rsi_cmd_desc_dword0 desc_dword0;
	struct rsi_cmd_desc_dword1 desc_dword1;
	struct rsi_cmd_desc_dword2 desc_dword2;
	__le16 reserved;
	__le16 umac_clk;
	struct bootup_params_9116 bootup_params;
} __packed;

struct rsi_peer_notify {
	struct rsi_cmd_desc desc;
	u8 mac_addr[6];
	__le16 command;
	__le16 mpdu_density;
	__le16 reserved;
	__le32 sta_flags;
} __packed;

/* Aggregation params flags */
#define RSI_AGGR_PARAMS_TID_MASK	0xf
#define RSI_AGGR_PARAMS_START		BIT(4)
#define RSI_AGGR_PARAMS_RX_AGGR		BIT(5)
struct rsi_aggr_params {
	struct rsi_cmd_desc_dword0 desc_dword0;
	struct rsi_cmd_desc_dword0 desc_dword1;
	__le16 seq_start;
	__le16 baw_size;
	__le16 token;
	u8 aggr_params;
	u8 peer_id;
} __packed;

struct rsi_bb_rf_prog {
	struct rsi_cmd_desc_dword0 desc_dword0;
	__le16 reserved1;
	u8 rf_power_mode;

Annotation

Implementation Notes