drivers/net/wireless/intel/iwlwifi/fw/api/mac-cfg.h
Source file repositories/reference/linux-study-clean/drivers/net/wireless/intel/iwlwifi/fw/api/mac-cfg.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/net/wireless/intel/iwlwifi/fw/api/mac-cfg.h- Extension
.h- Size
- 49434 bytes
- Lines
- 1458
- 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
mac.hphy-ctxt.h
Detected Declarations
struct iwl_p2p_noa_attrstruct iwl_probe_resp_data_notifstruct iwl_missed_vap_notifstruct iwl_channel_switch_start_notif_v1struct iwl_channel_switch_start_notifstruct iwl_channel_switch_error_notif_v1struct iwl_channel_switch_error_notifstruct iwl_cancel_channel_switch_cmdstruct iwl_chan_switch_te_cmdstruct iwl_mac_low_latency_cmdstruct iwl_mac_client_datastruct iwl_mac_p2p_dev_datastruct iwl_mac_wifi_gen_support_v2struct iwl_mac_wifi_gen_supportstruct iwl_mac_config_cmd_v3struct iwl_mac_nan_datastruct iwl_mac_config_cmdstruct iwl_npca_paramsstruct iwl_link_config_cmdstruct iwl_sta_cfg_cmd_v1struct iwl_sta_cfg_cmd_v2struct iwl_sta_cfg_cmdstruct iwl_aux_sta_cmdstruct iwl_remove_sta_cmdstruct iwl_mvm_sta_disable_tx_cmdstruct iwl_esr_mode_notif_v1struct iwl_esr_mode_notifstruct iwl_missed_beacons_notifstruct iwl_esr_trans_fail_notifstruct iwl_twt_operation_cmdstruct iwl_nan_band_configstruct iwl_nan_config_cmdstruct iwl_nan_schedule_cmd_v1struct iwl_nan_schedule_cmdstruct iwl_nan_peer_cmdstruct iwl_nan_cluster_notifstruct iwl_nan_dw_end_notifstruct iwl_nan_ulw_attr_notifstruct iwl_nan_sched_update_completed_notifenum iwl_mac_conf_subcmd_idsenum iwl_mac_config_filter_flagsenum iwl_link_ctx_modify_flagsenum iwl_link_ctx_protection_flagsenum iwl_link_ctx_flagsenum iwl_link_modify_bandwidthenum iwl_npca_flagsenum iwl_fw_sta_typeenum iwl_mvm_fw_esr_recommendation
Annotated Snippet
struct iwl_p2p_noa_attr {
u8 id;
u8 len_low;
u8 len_high;
u8 idx;
u8 ctwin;
struct ieee80211_p2p_noa_desc desc[IWL_P2P_NOA_DESC_COUNT];
u8 reserved;
} __packed;
#define IWL_PROBE_RESP_DATA_NO_CSA (0xff)
/**
* struct iwl_probe_resp_data_notif - notification with NOA and CSA counter
*
* @mac_id: the mac which should send the probe response
* @noa_active: notifies if the noa attribute should be handled
* @noa_attr: P2P NOA attribute
* @csa_counter: current csa counter
* @reserved: reserved for alignment purposes
*/
struct iwl_probe_resp_data_notif {
__le32 mac_id;
__le32 noa_active;
struct iwl_p2p_noa_attr noa_attr;
u8 csa_counter;
u8 reserved[3];
} __packed; /* PROBE_RESPONSE_DATA_NTFY_API_S_VER_1 */
/**
* struct iwl_missed_vap_notif - notification of missing vap detection
*
* @mac_id: the mac for which the ucode sends the notification for
* @num_beacon_intervals_elapsed: beacons elpased with no vap profile inside
* @profile_periodicity: beacons period to have our profile inside
* @reserved: reserved for alignment purposes
*/
struct iwl_missed_vap_notif {
__le32 mac_id;
u8 num_beacon_intervals_elapsed;
u8 profile_periodicity;
u8 reserved[2];
} __packed; /* MISSED_VAP_NTFY_API_S_VER_1 */
/**
* struct iwl_channel_switch_start_notif_v1 - Channel switch start notification
*
* @id_and_color: ID and color of the MAC
*/
struct iwl_channel_switch_start_notif_v1 {
__le32 id_and_color;
} __packed; /* CHANNEL_SWITCH_START_NTFY_API_S_VER_1 */
/**
* struct iwl_channel_switch_start_notif - Channel switch start notification
*
* @link_id: FW link id
*/
struct iwl_channel_switch_start_notif {
__le32 link_id;
} __packed; /* CHANNEL_SWITCH_START_NTFY_API_S_VER_3 */
#define CS_ERR_COUNT_ERROR BIT(0)
#define CS_ERR_LONG_DELAY_AFTER_CS BIT(1)
#define CS_ERR_LONG_TX_BLOCK BIT(2)
#define CS_ERR_TX_BLOCK_TIMER_EXPIRED BIT(3)
/**
* struct iwl_channel_switch_error_notif_v1 - Channel switch error notification
*
* @mac_id: the mac for which the ucode sends the notification for
* @csa_err_mask: mask of channel switch error that can occur
*/
struct iwl_channel_switch_error_notif_v1 {
__le32 mac_id;
__le32 csa_err_mask;
} __packed; /* CHANNEL_SWITCH_ERROR_NTFY_API_S_VER_1 */
/**
* struct iwl_channel_switch_error_notif - Channel switch error notification
*
* @link_id: FW link id
* @csa_err_mask: mask of channel switch error that can occur
*/
struct iwl_channel_switch_error_notif {
__le32 link_id;
__le32 csa_err_mask;
} __packed; /* CHANNEL_SWITCH_ERROR_NTFY_API_S_VER_2 */
/**
Annotation
- Immediate include surface: `mac.h`, `phy-ctxt.h`.
- Detected declarations: `struct iwl_p2p_noa_attr`, `struct iwl_probe_resp_data_notif`, `struct iwl_missed_vap_notif`, `struct iwl_channel_switch_start_notif_v1`, `struct iwl_channel_switch_start_notif`, `struct iwl_channel_switch_error_notif_v1`, `struct iwl_channel_switch_error_notif`, `struct iwl_cancel_channel_switch_cmd`, `struct iwl_chan_switch_te_cmd`, `struct iwl_mac_low_latency_cmd`.
- 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.