STATION TABLE - INTRODUCTION(9)
πΈ STATION TABLE β INTRODUCTION (9) πΈ
okay so bestie, welcome to the Kernel API Manual, section 9 β literally the station table intro, and it's kind of a big deal. Sit down, grab a strawberry drink π, and let's get into it.
β¨ NAME β¨
station table β introduction π
π¦ DESCRIPTION π¦
The station table is a list of data structures that represent the stations. No cap.
In STA/P2P client mode, the driver will hold one station for the AP/GO. In GO/AP mode, the driver will have as many stations as associated clients β like, one per bestie who joined the group chat. π
All these stations are reflected in the fw's station table, and the driver keeps the fw's station table up to date with the ADD_STA command. Stations can be removed by the REMOVE_STA command. Periodt.
All the data related to a station is held in the structure iwl_mvm_sta, which is embedded in mac80211's ieee80211_sta (in the drv_priv) area. This data includes the index of the station in the fw, per tid information (sequence numbers, Block-ack state machine, etcβ¦). The stations are created and deleted by the sta_state callback from ieee80211_ops. It's giving very much main character energy.
The driver holds a map: fw_id_to_mac_id, and that map allows it to fetch a ieee80211_sta (and the iwl_mvm_sta embedded into it) based on a fw station index. That way, the driver is able to get the tid related data in O(1) in time sensitive paths (Tx / Tx response / BA notification). π
These paths are triggered by the fw, and the driver needs to get a pointer to the ieee80211 structure. This map helps to get that pointer quickly. Not me obsessing over a lookup table... but fr fr, she ate. π₯
π«Ά Quick vibe check so nothing gets twisted: it'sADD_STAin,REMOVE_STAout, andfw_id_to_mac_idis the little black book that finds your station again in O(1).
π SEE ALSO π
- Kernel file
./drivers/net/wireless/intel/iwlwifi/mvm/sta.hβ the actual source, go read her π DQA - Dynamic Queue Allocation -introduction(9)station table - locking(9)station table - internal stations(9)station table - AP Station in STA mode(9)station table - Drain vs. Flush(9)station table - fw restart(9)AP mode - PS(9)enum iwl_mvm_agg_state(9)struct iwl_mvm_tid_data(9)enum iwl_mvm_rxq_notif_type(9)struct iwl_mvm_internal_rxq_notif(9)struct iwl_mvm_rxq_dup_data(9)struct iwl_mvm_link_sta(9)struct iwl_mvm_sta(9)struct iwl_mvm_int_sta(9)iwl_mvm_sta_send_to_fw(9)struct iwl_mvm_sta_state_ops(9)
And that's the whole page, bestie β go forth and station-table responsibly. π§
π sourced from ./drivers/net/wireless/intel/i..., dated October 2026, section 9 β mwah, bye! π
π¦ 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