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

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

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/realtek/rtw88/fw.h
Extension
.h
Size
37238 bytes
Lines
901
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_c2h_cmd {
	u8 id;
	u8 seq;
	u8 payload[];
} __packed;

struct rtw_c2h_adaptivity {
	u8 density;
	u8 igi;
	u8 l2h_th_init;
	u8 l2h;
	u8 h2l;
	u8 option;
} __packed;

struct rtw_c2h_ra_rpt {
	u8 rate_sgi;
	u8 mac_id;
	u8 byte2;
	u8 status;
	u8 byte4;
	u8 ra_ratio;
	u8 bw;
} __packed;

#define RTW_C2H_RA_RPT_RATE	GENMASK(6, 0)
#define RTW_C2H_RA_RPT_SGI	BIT(7)

struct rtw_h2c_register {
	u32 w0;
	u32 w1;
} __packed;

#define RTW_H2C_W0_CMDID		GENMASK(7, 0)

/* H2C_CMD_DEFAULT_PORT command */
#define RTW_H2C_DEFAULT_PORT_W0_PORTID	GENMASK(15, 8)
#define RTW_H2C_DEFAULT_PORT_W0_MACID	GENMASK(23, 16)

struct rtw_h2c_cmd {
	__le32 msg;
	__le32 msg_ext;
} __packed;

enum rtw_rsvd_packet_type {
	RSVD_BEACON,
	RSVD_DUMMY,
	RSVD_PS_POLL,
	RSVD_PROBE_RESP,
	RSVD_NULL,
	RSVD_QOS_NULL,
	RSVD_LPS_PG_DPK,
	RSVD_LPS_PG_INFO,
	RSVD_PROBE_REQ,
	RSVD_NLO_INFO,
	RSVD_CH_INFO,
};

enum rtw_fw_rf_type {
	FW_RF_1T2R = 0,
	FW_RF_2T4R = 1,
	FW_RF_2T2R = 2,
	FW_RF_2T3R = 3,
	FW_RF_1T1R = 4,
	FW_RF_2T2R_GREEN = 5,
	FW_RF_3T3R = 6,
	FW_RF_3T4R = 7,
	FW_RF_4T4R = 8,
	FW_RF_MAX_TYPE = 0xF,
};

enum rtw_fw_feature {
	FW_FEATURE_SIG = BIT(0),
	FW_FEATURE_LPS_C2H = BIT(1),
	FW_FEATURE_LCLK = BIT(2),
	FW_FEATURE_PG = BIT(3),
	FW_FEATURE_TX_WAKE = BIT(4),
	FW_FEATURE_BCN_FILTER = BIT(5),
	FW_FEATURE_NOTIFY_SCAN = BIT(6),
	FW_FEATURE_ADAPTIVITY = BIT(7),
	FW_FEATURE_SCAN_OFFLOAD = BIT(8),
	FW_FEATURE_MAX = BIT(31),
};

enum rtw_fw_feature_ext {
	FW_FEATURE_EXT_OLD_PAGE_NUM = BIT(0),
};

enum rtw_beacon_filter_offload_mode {
	BCN_FILTER_OFFLOAD_MODE_0 = 0,

Annotation

Implementation Notes