drivers/net/wireless/intel/iwlwifi/fw/api/tx.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/intel/iwlwifi/fw/api/tx.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/intel/iwlwifi/fw/api/tx.h- Extension
.h- Size
- 31728 bytes
- Lines
- 980
- 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/ieee80211.h
Detected Declarations
struct iwl_tx_cmd_v6_paramsstruct iwl_tx_cmd_v6struct iwl_dram_sec_infostruct iwl_tx_cmd_v9struct iwl_tx_cmdstruct agg_tx_statusstruct iwl_tx_resp_v3struct iwl_tx_respstruct iwl_mvm_ba_notifstruct iwl_compressed_ba_tfdstruct iwl_compressed_ba_ratidstruct iwl_compressed_ba_notifstruct iwl_mac_beacon_cmd_v6struct iwl_mac_beacon_cmd_v7struct iwl_mac_beacon_cmdstruct iwl_beacon_notifstruct iwl_extended_beacon_notif_v5struct iwl_extended_beacon_notifstruct iwl_tx_path_flush_cmd_v1struct iwl_tx_path_flush_cmdstruct iwl_flush_queue_infostruct iwl_tx_path_flush_cmd_rspstruct iwl_scd_txq_cfg_cmdstruct iwl_scd_txq_cfg_rspenum iwl_tx_flagsenum iwl_tx_cmd_flagsenum iwl_tx_pm_timeoutsenum iwl_tx_cmd_sec_ctrlenum iwl_tx_offload_assist_flags_posenum iwl_tx_statusenum iwl_tx_agg_statusenum iwl_mvm_ba_resp_flagsenum iwl_mac_beacon_flags_v1enum iwl_mac_beacon_flagsenum iwl_dump_controlenum iwl_scd_cfg_actions
Annotated Snippet
struct iwl_tx_cmd_v6_params {
__le16 len;
__le16 offload_assist;
__le32 tx_flags;
struct {
u8 try_cnt;
u8 btkill_cnt;
__le16 reserved;
} scratch; /* DRAM_SCRATCH_API_U_VER_1 */
__le32 rate_n_flags;
u8 sta_id;
u8 sec_ctl;
u8 initial_rate_index;
u8 reserved2;
u8 key[16];
__le32 reserved3;
__le32 life_time;
__le32 dram_lsb_ptr;
u8 dram_msb_ptr;
u8 rts_retry_limit;
u8 data_retry_limit;
u8 tid_tspec;
__le16 pm_frame_timeout;
__le16 reserved4;
} __packed; /* TX_CMD_API_S_VER_6 */
/**
* struct iwl_tx_cmd_v6 - TX command struct to FW
* ( TX_CMD = 0x1c )
* @params: parameters of the TX, see &struct iwl_tx_cmd_v6_tx_params
* @hdr: 802.11 header
*
* After ¶ms, the MAC header is placed, plus any padding,
* and then the actual payload.
*/
struct iwl_tx_cmd_v6 {
struct iwl_tx_cmd_v6_params params;
struct ieee80211_hdr hdr[];
} __packed; /* TX_CMD_API_S_VER_6 */
struct iwl_dram_sec_info {
__le32 pn_low;
__le16 pn_high;
__le16 aux_info;
} __packed; /* DRAM_SEC_INFO_API_S_VER_1 */
/**
* struct iwl_tx_cmd_v9 - TX command struct to FW for 22000 devices
* ( TX_CMD = 0x1c )
* @len: in bytes of the payload, see below for details
* @offload_assist: TX offload configuration
* @flags: combination of &enum iwl_tx_cmd_flags
* @dram_info: FW internal DRAM storage
* @rate_n_flags: rate for *all* Tx attempts, if TX_CMD_FLG_STA_RATE_MSK is
* cleared. Combination of RATE_MCS_*
* @hdr: 802.11 header
*/
struct iwl_tx_cmd_v9 {
__le16 len;
__le16 offload_assist;
__le32 flags;
struct iwl_dram_sec_info dram_info;
__le32 rate_n_flags;
struct ieee80211_hdr hdr[];
} __packed; /* TX_CMD_API_S_VER_7,
TX_CMD_API_S_VER_9 */
/**
* struct iwl_tx_cmd - TX command struct to FW for AX210+ devices
* ( TX_CMD = 0x1c )
* @len: in bytes of the payload, see below for details
* @flags: combination of &enum iwl_tx_cmd_flags
* @offload_assist: TX offload configuration
* @dram_info: FW internal DRAM storage
* @rate_n_flags: rate for *all* Tx attempts, if TX_CMD_FLG_STA_RATE_MSK is
* cleared. Combination of RATE_MCS_*; format depends on version
* @reserved: reserved
* @hdr: 802.11 header
*/
struct iwl_tx_cmd {
__le16 len;
__le16 flags;
__le32 offload_assist;
struct iwl_dram_sec_info dram_info;
__le32 rate_n_flags;
u8 reserved[8];
struct ieee80211_hdr hdr[];
} __packed; /* TX_CMD_API_S_VER_10,
* TX_CMD_API_S_VER_11
*/
Annotation
- Immediate include surface: `linux/ieee80211.h`.
- Detected declarations: `struct iwl_tx_cmd_v6_params`, `struct iwl_tx_cmd_v6`, `struct iwl_dram_sec_info`, `struct iwl_tx_cmd_v9`, `struct iwl_tx_cmd`, `struct agg_tx_status`, `struct iwl_tx_resp_v3`, `struct iwl_tx_resp`, `struct iwl_mvm_ba_notif`, `struct iwl_compressed_ba_tfd`.
- 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.