STRUCT IWL_HE_STA_CONTEXT_CMD_V3(9)
π NAME π
okay bestie, so struct iwl_he_sta_context_cmd_v3 is literally the struct that configures the FW (firmware, iykyk) to work with an HE AP. that's it. that's the whole vibe. it's a Kernel API Manual page and we're gonna get through it together π
β¨ SYNOPSIS β¨
here's the whole squad, member by member, no cap:
struct iwl_he_sta_context_cmd_v3 {
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_v2 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 puncture_mask;
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];
};
like, look at all those fields. main character energy fr fr π
π¦ Members π¦
time for the roll call, bestie. every single one, in order, periodt:
sta_idβ the STA id. that's the whole thing. π«Άtid_limitβ max num of TIDs in TX HE-SU multi-TID agg. and the values?0β bad value (π),1β multi-tid not supported,2..8β tid limit. memorize it, i'm serious.reserved1β reserved byte for future use. it's just sitting there, being mysterious. πreserved2β reserved byte for future use. twin ofreserved1. iconic honestly.flagsβ seeiwl_11ax_sta_ctxt_flags. that's where the real lore is.ref_bssid_addrβ reference BSSID used by the AP.reserved0β reserved 2 bytes for aligning theref_bssid_addrfield to 8 bytes. not me being obsessed with alignment π it's giving structural integrity.htc_flagsβ which features are supported in HTC.frag_flagsβ frag support in A-MSDU.frag_levelβ frag support level. yes there's a level. yes it matters.frag_max_numβ max num of "open" MSDUs in the receiver (in power of 2). note the quotes around "open" β that's not me, that's the manual, i don't make the rules πfrag_min_sizeβ min frag size (except last frag). last frag said "not today" πpkt_extβ optional, exists according to PPE-present bit in the HE-PHY capa. optional!! so if it ghosts you, that's allowed.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 units.frame_time_rts_thβ HE duration RTS threshold, in units of 32us. units matter, don't skip them. π₯rand_alloc_ecwminβ random CWmin =2**ECWmin-1.rand_alloc_ecwmaxβ random CWmax =2**ECWmax-1. matching set with the one above, we love a duo β¨puncture_maskβ puncture mask for EHT.trig_based_txfβ MU EDCA Parameter set for the trigger based traffic queues. it's an array,[AC_NUM], we see you π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. so like, patience is a virtue πΈbssid_countβ actual number of VAPs in the MultiBSS Set. actual number, bestie. the real one. π€reserved4β alignment. just alignment.[3]bytes of pure alignment vibes. π§
π SEE ALSO π
everything else in the family, go read these next β it lives in Kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/mac.h, and it's adjacent to:
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_v2(9), struct iwl_he_monitor_cmd(9)
like, that's a whole friend group. v1, v2, and v3 walked so the rest could run π
aaaand that's the page!! π giant slay for making it to the end, bestie β you literally know the entire iwl_he_sta_context_cmd_v3 struct now π the source is ./drivers/net/wireless/intel/i..., dated October 2026, and this was struct iwl_h...ntext_cmd_v3(9) β catch you on the next one! ππ¦π
π¦ 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