STRUCT IWL_MAC_DATA_STA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct iwl_mac_data_sta(9) β€” the Kernel API Manual, bestie

okay so picture this: it's a page from the Kernel API Manual, and its whole little job is being the configuration data for station MAC context. that's the NAME line, and yes she ate πŸ’…


✨ SYNOPSIS ✨

like, here's literally the whole struct, character for character, no cap:

struct iwl_mac_data_sta {
    __le32 is_assoc;
    __le32 dtim_time;
    __le64 dtim_tsf;
    __le32 bi;
    __le32 reserved1;
    __le32 dtim_interval;
    __le32 data_policy;
    __le32 listen_interval;
    __le32 assoc_id;
    __le32 assoc_beacon_arrive_time;
 };

(that stray space before the closing brace? iconic. keeping it. πŸŽ€)


🌸 Members 🌸

okay bestie, field-by-field, here's the vibe check on every single one:

  • is_assoc β€” 1 for associated state, 0 otherwise. that's it, that's the whole field πŸ¦‹
  • dtim_time β€” the DTIM arrival time, but in system time. clock in, queen ⏰
  • dtim_tsf β€” the DTIM arrival time, in TSF this time. same energy, different timeline ✨
  • bi β€” beacon interval in TU. lowkey only applicable when associated, so don't come for her when you're not πŸ’€
  • reserved1 β€” reserved. she's just sitting there. minding her business. πŸ™ˆ
  • dtim_interval β€” DTIM interval in TU, and again β€” applicable only when associated πŸ‘‘
  • data_policy β€” see enum iwl_mac_data_policy. go read her page, she's the main character over there πŸ“–
  • listen_interval β€” measured in beacon intervals, applicable only when associated. yes, another associated-only baddie 🫢
  • assoc_id β€” the unique ID the AP assigns you during association. your little name tag from the AP itself 🏷️
  • assoc_beacon_arrive_time β€” the TSF of the first beacon after association. first beacon post-glow-up, we love to see it 🌈
fr fr notice how bi, dtim_interval, and listen_interval all say "applicable only when associated"? that's not a coincidence bestie, that's the whole theme πŸ’–

πŸ¦‹ SEE ALSO πŸ¦‹

go read the source first, it's right here in the kernel file: ./drivers/net/wireless/intel/iwlwifi/fw/api/mac.h β€” then the whole friend group, in exactly this order:

  • 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_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_sta_context_cmd_v3(9)
  • struct iwl_he_monitor_cmd(9)

like, that's a whole squad. iykyk πŸ’œ


and that's the page!! mwah 🫢 this diva came straight out of the kernel file ./drivers/net/wireless/intel/i... (yes it's truncated like that in the footer, don't @ me) and she's stamped October 2026, footer reading struct iwl_mac_data_sta(9) β€” same as the header, because she's consistent like that. periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from