drivers/net/wireless/rsi/rsi_ps.h

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

File Facts

System
Linux kernel
Corpus path
drivers/net/wireless/rsi/rsi_ps.h
Extension
.h
Size
1900 bytes
Lines
64
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 ps_sleep_params {
	u8 enable;
	u8 sleep_type;
	u8 connected_sleep;
	u8 reserved1;
	__le16 num_bcns_per_lis_int;
	__le16 wakeup_type;
	__le32 sleep_duration;
} __packed;

struct rsi_ps_info {
	u8 enabled;
	u8 sleep_type;
	u8 tx_threshold;
	u8 rx_threshold;
	u8 tx_hysterisis;
	u8 rx_hysterisis;
	u16 monitor_interval;
	u32 listen_interval;
	u16 num_bcns_per_lis_int;
	u32 dtim_interval_duration;
	u16 num_dtims_per_sleep;
	u32 deep_sleep_wakeup_period;
} __packed;

char *str_psstate(enum ps_state state);
void rsi_enable_ps(struct rsi_hw *adapter, struct ieee80211_vif *vif);
void rsi_disable_ps(struct rsi_hw *adapter, struct ieee80211_vif *vif);
int rsi_handle_ps_confirm(struct rsi_hw *adapter, u8 *msg);
void rsi_default_ps_params(struct rsi_hw *hw);
void rsi_conf_uapsd(struct rsi_hw *adapter, struct ieee80211_vif *vif);
#endif

Annotation

Implementation Notes