STRUCT IWL_HE_STA_CONTEXT_CMD_V2(9)
π struct iwl_he_sta_context_cmd_v2 β NAME π
okay so bestie, welcome to the Kernel API Manual β¨ this page is literally all about struct iwl_he_sta_context_cmd_v2 β the thing that configures the firmware to work with an HE AP. yes. that's the whole vibe. HE AP. firmware. slay π«Ά
πΈ SYNOPSIS πΈ
like, here's the whole struct, character for character, no cap:
struct iwl_he_sta_context_cmd_v2 {
u8 sta_id;
u8 tid_limit;
u8 reserved1;
u8 reserved2;
__le32 flags;
u8 ref_bssid_addr[6];
__le16 reserved0;
__le32 htc_flags;
u8 frag_flags;
u8 frag_level;
u8 frag_max_num;
u8 frag_min_size;
struct iwl_he_pkt_ext_v1 pkt_ext;
u8 bss_color;
u8 htc_trig_based_pkt_ext;
__le16 frame_time_rts_th;
u8 rand_alloc_ecwmin;
u8 rand_alloc_ecwmax;
__le16 reserved3;
struct iwl_he_backoff_conf trig_based_txf[AC_NUM];
u8 max_bssid_indicator;
u8 bssid_index;
u8 ema_ap;
u8 profile_periodicity;
u8 bssid_count;
u8 reserved4[3];
};
it's giving field after field after field and honestly? iconic π
π¦ Members π¦
okay so let's go through every single one because we do not skip. periodt.
sta_idβ the STA id. that's it, that's the whole thing πtid_limitβ max num of TIDs in TX HE-SU multi-TID agg. and listen, the values matter:0= bad value (do not do this),1= multi-tid not supported,2..8= tid limit. iykyk β¨reserved1β reserved byte for future use π (future us is gonna be so grateful)reserved2β reserved byte for future use, again. two of them. matching set πflagsβ seeiwl_11ax_sta_ctxt_flags. go look, bestie πref_bssid_addrβ reference BSSID used by the AP π¦reserved0β reserved 2 bytes for aligning theref_bssid_addrfield to 8 bytes. it's an alignment thing, it's fine, it's doing its job πΈhtc_flagsβ which features are supported in HTC π₯frag_flagsβ frag support in A-MSDUfrag_levelβ frag support levelfrag_max_numβ max num of "open" MSDUs in the receiver (in power of 2). note the quotes around "open", that's canon πfrag_min_sizeβ min frag size (except last frag). last frag gets to be different, main character energy honestly βpkt_extβ optional! exists according to PPE-present bit in the HE-PHY capa. so like, conditional queen πbss_colorβ 11ax AP ID that is used in the HE SIG-A to mark inter BSS frame πhtc_trig_based_pkt_extβ default PE in 4us unitsframe_time_rts_thβ HE duration RTS threshold, in units of 32us. that's32us, not4us, don't mix em up πrand_alloc_ecwminβ random CWmin =2**ECWmin-1π§rand_alloc_ecwmaxβ random CWmax =2**ECWmax-1π§ (yes the twin, yes the formula)reserved3β reserved byte for future use πtrig_based_txfβ MU EDCA Parameter set for the trigger based traffic queues. it's an array:struct iwl_he_backoff_conf trig_based_txf[AC_NUM]πmax_bssid_indicatorβ indicator of the max bssid supported on the associated bss πΈbssid_indexβ index of the associated VAP π«Άema_apβ AP supports enhanced Multi BSSID advertisement πprofile_periodicityβ number of Beacon periods that are needed to receive the complete VAPs info βbssid_countβ actual number of VAPs in the MultiBSS Set π₯reserved4β alignment. just alignment. that's its whole personality π (it'su8 reserved4[3], for the record)
π SEE ALSO π
bestie the rabbit hole is deep and honestly i'm obsessed. the source of truth lives in the kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/mac.h, and then there's all of this:
enum iwl_mac_protection_flags(9)enum iwl_mac_types(9)enum iwl_tsf_id(9)struct iwl_mac_data_ap(9)struct iwl_mac_data_ibss(9)enum iwl_mac_data_policy(9)struct iwl_mac_data_sta(9)struct iwl_mac_data_go(9)struct iwl_mac_data_p2p_sta(9)struct iwl_mac_data_pibss(9)enum iwl_mac_filter_flags(9)enum iwl_mac_qos_flags(9)struct iwl_ac_qos(9)struct iwl_mac_ctx_cmd(9)struct iwl_missed_beacons_notif_ver_3(9)struct iwl_missed_beacons_notif_v4(9)struct iwl_he_backoff_conf(9)enum iwl_he_pkt_ext_constellations(9)struct iwl_he_pkt_ext_v1(9)struct iwl_he_pkt_ext_v2(9)enum iwl_he_sta_ctxt_flags(9)enum iwl_he_htc_flags(9)struct iwl_he_sta_context_cmd_v1(9)struct iwl_he_sta_context_cmd_v3(9)struct iwl_he_monitor_cmd(9)
v1, v2, v3 β it's a whole family and v2 is the middle child but we love her π
okay and just so we're clear, this page came from./drivers/net/wireless/intel/i...and it's dated October 2026, and the title up top isstruct iwl_h...ntext_cmd_v2(9)β so like, that's the whole citation situation, bestie π
that's it! go forth and configure that firmware β¨π π¦
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms