STRUCT IEEE80211_CONF(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct ieee80211_conf(9) πŸ’– β€” configuration of the device

okay so bestie, welcome to the Kernel API Manual ✨ you're about to read the little struct that tells a driver how to actually set up its hardware. it's giving "the vibes memo for your wifi chip" and honestly? kind of iconic. πŸŽ€


🌸 NAME 🌸

struct ieee80211_conf β€” configuration of the device


✨ SYNOPSIS ✨

struct ieee80211_conf {
    u32 flags;
    int power_level, dynamic_ps_timeout;
    u16 listen_interval;
    u8 ps_dtim_period;
    u8 long_frame_max_tx_count, short_frame_max_tx_count;
    struct cfg80211_chan_def chandef;
    bool radar_enabled;
    enum ieee80211_smps_mode smps_mode;
 };

like, that's the whole lineup. no notes. πŸ’…


πŸ¦‹ Members πŸ¦‹

okay so here's the cast of characters, one by one, no skipping, we don't do that here 🫢

  • flags β€” the configuration flags, defined above. yes, above. go look. πŸ‘€
  • power_level β€” the requested transmit power, in dBm. lowkey a legacy situation: it's a backward compatibility value only, and it gets set to the minimum of all interfaces. fr fr, minimum of all of them.
  • dynamic_ps_timeout β€” the dynamic powersave timeout, in ms. the powersave docs below are the whole story on this one. 🧚 only valid when the CONF_PS flag is set β€” otherwise it's just vibes, not data.
  • listen_interval β€” the listen interval, measured in units of beacon interval. ⭐
  • ps_dtim_period β€” the DTIM period of the AP we're connected to, for use in power saving. heads up: power saving will not be enabled until a beacon has been received and the DTIM period is known. so like, no beacon, no nap. 😭
  • long_frame_max_tx_count β€” the maximum number of transmissions for a "long" frame (that's a frame that is not RTS protected). called "dot11LongRetryLimit" in 802.11, but plot twist: it actually means the number of transmissions, not the number of retries. read that twice, bestie. πŸ’€
  • short_frame_max_tx_count β€” same energy for a "short" frame: the maximum number of transmissions. called "dot11ShortRetryLimit" in 802.11, but again it actually means the number of transmissions, not the number of retries. πŸ™ˆ
  • chandef β€” the channel definition to tune to. tuning in πŸ”₯
  • radar_enabled β€” whether radar detection is enabled.
  • smps_mode β€” spatial multiplexing powersave mode. two notes, and they matter: IEEE80211_SMPS_STATIC is used when the device is not configured for an HT channel. and this is only valid if channel contexts are not used β€” otherwise each channel context has the number of chains listed. 🧠

🌈 Description 🌈

This struct indicates how the driver shall configure the hardware. that's it, that's the whole vibe check β€” it's the instruction sheet, and the driver is the main character who has to follow it. πŸ‘‘


πŸ’œ SEE ALSO πŸ’œ

Kernel file ./include/net/mac80211.h β€” and bestie, the guest list is LONG. literally everyone showed up. πŸ’…


ngl bestie, that's the entire guest list, iykyk. click through them one at a time and you'll be so good at this. πŸ™ˆβœ¨

and that's the page, periodt. πŸŽ€ source file lives over in ./include/net, dated October 2026, and it's filed under struct ieee80211_conf(9) β€” go off, you understand it now. mwah. πŸ’–πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from