drivers/net/wireless/ti/wlcore/acx.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/ti/wlcore/acx.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/ti/wlcore/acx.h- Extension
.h- Size
- 28766 bytes
- Lines
- 1123
- 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
wlcore.hcmd.h
Detected Declarations
struct acx_headerstruct acx_error_counterstruct acx_sleep_authstruct acx_rx_msdu_lifetimestruct acx_slotstruct acx_dot11_grp_addr_tblstruct acx_rx_timeoutstruct acx_rts_thresholdstruct acx_beacon_filter_optionstruct acx_beacon_filter_ie_tablestruct acx_conn_monit_paramsstruct acx_bt_wlan_coexstruct acx_bt_wlan_coex_paramstruct acx_dco_itrim_paramsstruct acx_energy_detectionstruct acx_beacon_broadcaststruct acx_event_maskstruct acx_feature_configstruct acx_current_tx_powerstruct acx_wake_up_conditionstruct acx_aidstruct acx_preamblestruct acx_ctsprotectstruct acx_rate_classstruct acx_rate_policystruct acx_ac_cfgstruct acx_tid_configstruct acx_frag_thresholdstruct acx_tx_config_optionsstruct wl12xx_acx_config_memorystruct wl1271_acx_mem_mapstruct wl1271_acx_rx_config_optstruct wl1271_acx_bet_enablestruct wl1271_acx_arp_filterstruct wl1271_acx_pm_configstruct wl1271_acx_keep_alive_modestruct wl1271_acx_keep_alive_configstruct wl1271_acx_rssi_snr_triggerstruct wl1271_acx_rssi_snr_avg_weightsstruct wl1271_acx_ht_capabilitiesstruct wl1271_acx_ht_informationstruct wl1271_acx_ba_initiator_policystruct wl1271_acx_ba_receiver_setupstruct wl12xx_acx_fw_tsf_informationstruct wl1271_acx_ps_rx_streamingstruct wl1271_acx_ap_max_tx_retrystruct wl1271_acx_config_psstruct wl1271_acx_inconnection_sta
Annotated Snippet
struct acx_header {
struct wl1271_cmd_header cmd;
/* acx (or information element) header */
__le16 id;
/* payload length (not including headers */
__le16 len;
} __packed;
struct acx_error_counter {
struct acx_header header;
/* The number of PLCP errors since the last time this */
/* information element was interrogated. This field is */
/* automatically cleared when it is interrogated.*/
__le32 PLCP_error;
/* The number of FCS errors since the last time this */
/* information element was interrogated. This field is */
/* automatically cleared when it is interrogated.*/
__le32 FCS_error;
/* The number of MPDUs without PLCP header errors received*/
/* since the last time this information element was interrogated. */
/* This field is automatically cleared when it is interrogated.*/
__le32 valid_frame;
/* the number of missed sequence numbers in the squentially */
/* values of frames seq numbers */
__le32 seq_num_miss;
} __packed;
enum wl12xx_role {
WL1271_ROLE_STA = 0,
WL1271_ROLE_IBSS,
WL1271_ROLE_AP,
WL1271_ROLE_DEVICE,
WL1271_ROLE_P2P_CL,
WL1271_ROLE_P2P_GO,
WL1271_ROLE_MESH_POINT,
WL12XX_INVALID_ROLE_TYPE = 0xff
};
enum wl1271_psm_mode {
/* Active mode */
WL1271_PSM_CAM = 0,
/* Power save mode */
WL1271_PSM_PS = 1,
/* Extreme low power */
WL1271_PSM_ELP = 2,
WL1271_PSM_MAX = WL1271_PSM_ELP,
/* illegal out of band value of PSM mode */
WL1271_PSM_ILLEGAL = 0xff
};
struct acx_sleep_auth {
struct acx_header header;
/* The sleep level authorization of the device. */
/* 0 - Always active*/
/* 1 - Power down mode: light / fast sleep*/
/* 2 - ELP mode: Deep / Max sleep*/
u8 sleep_auth;
u8 padding[3];
} __packed;
enum {
HOSTIF_PCI_MASTER_HOST_INDIRECT,
HOSTIF_PCI_MASTER_HOST_DIRECT,
HOSTIF_SLAVE,
HOSTIF_PKT_RING,
HOSTIF_DONTCARE = 0xFF
};
#define DEFAULT_UCAST_PRIORITY 0
#define DEFAULT_RX_Q_PRIORITY 0
#define DEFAULT_RXQ_PRIORITY 0 /* low 0 .. 15 high */
#define DEFAULT_RXQ_TYPE 0x07 /* All frames, Data/Ctrl/Mgmt */
#define TRACE_BUFFER_MAX_SIZE 256
#define DP_RX_PACKET_RING_CHUNK_SIZE 1600
#define DP_TX_PACKET_RING_CHUNK_SIZE 1600
#define DP_RX_PACKET_RING_CHUNK_NUM 2
#define DP_TX_PACKET_RING_CHUNK_NUM 2
Annotation
- Immediate include surface: `wlcore.h`, `cmd.h`.
- Detected declarations: `struct acx_header`, `struct acx_error_counter`, `struct acx_sleep_auth`, `struct acx_rx_msdu_lifetime`, `struct acx_slot`, `struct acx_dot11_grp_addr_tbl`, `struct acx_rx_timeout`, `struct acx_rts_threshold`, `struct acx_beacon_filter_option`, `struct acx_beacon_filter_ie_table`.
- 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.