STRUCT IEEE80211_HE_MCS_NSS_SUPP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct ieee80211_he_mcs_nss_supp β€” NAME πŸ¦‹

okay so bestie, welcome to the Kernel API Manual page for struct ieee80211_he_mcs_nss_supp, which is literally the HE Tx/Rx HE MCS NSS Support Field πŸ’… like that's the whole vibe, that's the name, periodt.


✨ SYNOPSIS ✨

no cap, here's the whole struct, character for character, don't touch:

struct ieee80211_he_mcs_nss_supp {
    __le16 rx_mcs_80;
    __le16 tx_mcs_80;
    __le16 rx_mcs_160;
    __le16 tx_mcs_160;
    __le16 rx_mcs_80p80;
    __le16 tx_mcs_80p80;
 };

six __le16 fields, all matching, it's giving symmetry icon behavior πŸŽ€


🌸 Members 🌸

okay so let's meet the girlies one by one 🫢

  • rx_mcs_80 β€” the Rx MCS map, and here's the tea: it's 2 bits for each stream, total 8 streams, and it's for channel widths less than 80MHz. yes bestie, less than.
  • tx_mcs_80 β€” the Tx MCS map, same deal: 2 bits for each stream, total 8 streams, for channel widths less than 80MHz. twins fr fr πŸ’–
  • rx_mcs_160 β€” Rx MCS map again, 2 bits for each stream, total 8 streams, but this one's for channel width 160MHz. glow up 🌈
  • tx_mcs_160 β€” Tx MCS map, 2 bits for each stream, total 8 streams, channel width 160MHz. iconic matching set πŸ’œ
  • rx_mcs_80p80 β€” Rx MCS map, 2 bits for each stream, total 8 streams, for channel width 80p80MHz. that's not a typo, that's literally the name πŸ”₯
  • tx_mcs_80p80 β€” Tx MCS map, 2 bits for each stream, total 8 streams, for channel width 80p80MHz. she's the last one and she ate πŸ’€
lowkey notice the pattern? every single field is 2 bits for each stream, total 8 streams β€” the only things changing are Rx vs Tx and the channel width. main character consistency ✨

πŸ‘‘ Description πŸ‘‘

so what does this struct actually do, bestie? it holds the data required for the Tx/Rx HE MCS NSS Support Field β€” and if you wanna read the actual source of truth, that's described in P802.11ax_D2.0 section 9.4.2.237.4 πŸ“– like that's the receipt, go read it iykyk.


πŸŽ€ SEE ALSO πŸŽ€

bestie the whole friend group is here, go say hi to all of them (yes, all of them, I'm not skipping a single one) 🌸

  • Kernel file ./include/linux/ieee80211-he.h struct ieee80211_he_cap_elem(9)
  • enum ieee80211_he_mcs_support(9)
  • struct ieee80211_he_operation(9)
  • struct ieee80211_he_spr(9)
  • struct ieee80211_he_mu_edca_param_ac_rec(9)
  • struct ieee80211_mu_edca_param_set(9)
  • struct ieee80211_he_6ghz_oper(9)
  • enum ieee80211_reg_conn_bits(9)
  • struct ieee80211_tx_pwr_env(9)
  • ieee80211_he_6ghz_oper(9) β€” yes she's listed twice, no I'm not fixing it, that's canon πŸ’…

and that's the whole page, bestie πŸ¦‹ it lives in ./include/linux, and this little slice of kernel lore is dated October 2026, from the struct ieee8...mcs_nss_supp(9) files. mwah, go forth and map your MCS πŸŽ€βœ¨πŸ’–

πŸ“¦ where this page comes from