STRUCT IWL_STA_CFG_CMD_V2(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct iwl_sta_cfg_cmd_v2 β€” the cmd structure to add a peer sta to the uCode's station table (STA_CONFIG_CMD = 0xA). Bestie, that's the whole name vibe: Kernel API Manual, section 9, and it's giving station-table realness. ✨

✨ SYNOPSIS ✨

       struct iwl_sta_cfg_cmd_v2 {
           __le32 sta_id;
           __le32 link_id;
           u8 peer_mld_address[ETH_ALEN];
           __le16 reserved_for_peer_mld_address;
           u8 peer_link_address[ETH_ALEN];
           __le16 reserved_for_peer_link_address;
           __le32 station_type;
           __le32 assoc_id;
           __le32 beamform_flags;
           __le32 mfp;
           __le32 mimo;
           __le32 mimo_protection;
           __le32 ack_enabled;
           __le32 trig_rnd_alloc;
           __le32 tx_ampdu_spacing;
           __le32 tx_ampdu_max_size;
           __le32 sp_length;
           __le32 uapsd_acs;
           struct iwl_he_pkt_ext_v2 pkt_ext;
           __le32 htc_flags;
           u8 use_ldpc_x2_cw;
           u8 use_icf;
           u8 dps_pad_time;
           u8 dps_trans_delay;
           u8 mic_prep_pad_delay;
           u8 mic_compute_pad_delay;
           u8 reserved[2];
        };

🫢 Members 🫢

okay bestie, here's the field-by-field tour β€” every single member, no skips, no "oops I forgot one" energy. πŸ’…

  • sta_id β€” index of station in uCode's station table.
  • link_id β€” the id of the link that is used to communicate with this sta.
  • peer_mld_address β€” the peers mld address.
  • reserved_for_peer_mld_address β€” reserved.
  • peer_link_address β€” the address of the link that is used to communicate with this sta.
  • reserved_for_peer_link_address β€” reserved.
  • station_type β€” type of this station. See enum iwl_fw_sta_type.
  • assoc_id β€” for GO only.
  • beamform_flags β€” beam forming controls.
  • mfp β€” indicates whether the STA uses management frame protection or not.
  • mimo β€” indicates whether the sta uses mimo or not.
  • mimo_protection β€” indicates whether the sta uses mimo protection or not.
  • ack_enabled β€” indicates that the AP supports receiving ACK- enabled AGG, i.e. both BACK and non-BACK frames in a single AGG.
  • trig_rnd_alloc β€” indicates that trigger based random allocation is enabled according to UORA element existence.
  • tx_ampdu_spacing β€” minimum A-MPDU spacing: 4 - 2us density, 5 - 4us density, 6 - 8us density, 7 - 16us density.
  • tx_ampdu_max_size β€” maximum A-MPDU length: 0 - 8K, 1 - 16K, 2 - 32K, 3 - 64K, 4 - 128K, 5 - 256K, 6 - 512K, 7 - 1024K.
  • sp_length β€” the size of the SP in actual number of frames.
  • uapsd_acs β€” 4 LS bits are trigger enabled ACs, 4 MS bits are the deliver enabled ACs.
  • pkt_ext β€” optional, exists according to PPE-present bit in the HE/EHT-PHY capa.
  • htc_flags β€” which features are supported in HTC.
  • use_ldpc_x2_cw β€” Indicates whether to use LDPC with double CW.
  • use_icf β€” Indicates whether to use ICF instead of RTS.
  • dps_pad_time β€” DPS (Dynamic Power Save) padding delay resolution to ensure proper timing alignment.
  • dps_trans_delay β€” DPS minimal time that takes the peer to return to low power.
  • mic_prep_pad_delay β€” MIC prep time padding.
  • mic_compute_pad_delay β€” MIC compute time padding.
  • reserved β€” Reserved for alignment.

🌈 SEE ALSO 🌈

The kernel file is ./drivers/net/wireless/intel/iwlwifi/fw/api/mac-cfg.h, and here's the full squad of sibling pages β€” yes, all of them, bestie, we're not leaving anyone on read:

  • enum iwl_mac_conf_subcmd_ids(9)
  • struct iwl_p2p_noa_attr(9)
  • struct iwl_probe_resp_data_notif(9)
  • struct iwl_missed_vap_notif(9)
  • struct iwl_channel_switch_start_notif_v1(9)
  • struct iwl_channel_switch_start_notif(9)
  • struct iwl_channel_switch_error_notif_v1(9)
  • struct iwl_channel_switch_error_notif(9)
  • struct iwl_cancel_channel_switch_cmd(9)
  • struct iwl_chan_switch_te_cmd(9)
  • struct iwl_mac_low_latency_cmd(9)
  • struct iwl_mac_client_data(9)
  • struct iwl_mac_p2p_dev_data(9)
  • enum iwl_mac_config_filter_flags(9)
  • struct iwl_mac_wifi_gen_support_v2(9)
  • struct iwl_mac_wifi_gen_support(9)
  • struct iwl_mac_config_cmd_v3(9)
  • struct iwl_mac_nan_data(9)
  • struct iwl_mac_config_cmd(9)
  • enum iwl_link_ctx_modify_flags(9)
  • enum iwl_link_ctx_protection_flags(9)
  • enum iwl_link_ctx_flags(9)
  • enum iwl_link_modify_bandwidth(9)
  • enum iwl_npca_flags(9)
  • struct iwl_npca_params(9)
  • struct iwl_link_config_cmd(9)
  • enum iwl_fw_sta_type(9)
  • struct iwl_sta_cfg_cmd_v1(9)
  • struct iwl_sta_cfg_cmd(9)
  • struct iwl_aux_sta_cmd(9)
  • struct iwl_remove_sta_cmd(9)
  • struct iwl_mvm_sta_disable_tx_cmd(9)
  • enum iwl_mvm_fw_esr_recommendation(9)
  • struct iwl_esr_mode_notif_v1(9)
  • enum iwl_esr_leave_reason(9)
  • struct iwl_esr_mode_notif(9)
  • struct iwl_missed_beacons_notif(9)
  • struct iwl_esr_trans_fail_notif(9)
  • struct iwl_twt_operation_cmd(9)
  • struct iwl_nan_band_config(9)
  • enum iwl_nan_flags(9)
  • struct iwl_nan_config_cmd(9)
  • struct iwl_nan_schedule_cmd_v1(9)
  • struct iwl_nan_schedule_cmd(9)
  • struct iwl_nan_peer_cmd(9)
  • enum iwl_nan_cluster_notif_flags(9)
  • struct iwl_nan_cluster_notif(9)
  • struct iwl_nan_dw_end_notif(9)
  • struct iwl_nan_ulw_attr_notif(9)
  • enum iwl_nan_sched_update_status(9)
  • struct iwl_nan_sched_update_completed_notif(9)

mwah πŸ’‹ that's the whole page! source/version check: ./drivers/net/wireless/intel/i..., dated October 2026, and the manual page is struct iwl_sta_cfg_cmd_v2(9). slay πŸŽ€βœ¨

πŸ“¦ where this page comes from