STRUCT IWL_HE_PKT_EXT_V2(9)
π struct iwl_he_pkt_ext_v2 β a Kernel API Manual moment
okay so bestie, we're in the kernel API manual for struct iwl_he_pkt_ext_v2, and it's literally all about QAM thresholds β¨
The required PPE is set via the HE Capabilities IE, per Nss x BW x MCS. Keep up, because the IE is organized in the following way: support for the Nss x BW (or RU) matrix is (0=SISO, 1=MIMO2) x (0-20MHz, 1-40MHz, 2-80MHz, 3-160MHz) π
Each entry contains 2 QAM thresholds for 8us and 16us, and the constellation lineup is iconic:
0=BPSK1=QPSK2=16QAM3=64QAM4=256QAM5=1024QAM6=RES7=NONE
i.e. QAM_th1 < QAM_th2, such that if TX uses QAM_tx:
QAM_tx < QAM_th1-->PPE=0usQAM_th1 <= QAM_tx < QAM_th2-->PPE=8usQAM_th2 <= QAM_tx-->PPE=16us
β¨ SYNOPSIS β¨
like, the shape of it, fr fr:
struct iwl_he_pkt_ext_v2 {
u8 pkt_ext_qam_th[MAX_HE_SUPP_NSS][MAX_CHANNEL_BW_INDX_API_D_VER_2][2];
};
π Members π
pkt_ext_qam_thβ QAM thresholds π«Ά For each Nss/Bw, define 2 QAM thrsholds(0..5). For rates below thelow_th, no need for PPE. For rates betweenlow_thandhigh_th, you need 8us PPE. For rates equal or higher then thehigh_th, you need 16us PPE. And the indexing goes Nss(0-siso, 1-mimo2)x BW(0-20MHz, 1-40MHz, 2-80MHz, 3-160MHz, 4-320MHz)x(0-low_th, 1-high_th)π
πΈ SEE ALSO πΈ
Kernel file ./drivers/net/wireless/intel/iwlwifi/fw/api/mac.h, plus the whole friend group:
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)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_sta_context_cmd_v3(9)struct iwl_he_monitor_cmd(9)
bestie this page lives at./drivers/net/wireless/intel/i...and it's dated October 2026 β that's the wholestruct iwl_he_pkt_ext_v2(9)vibe check, no cap π
okay that's the whole page, you ate that π mwah π
π¦ 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