STRUCT LINK_STATION_PARAMETERS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, welcome to the Kernel API Manual β€” yes, that Kernel API Manual β€” and today's main character is struct link_station_parameters. Say it with me: link station parameters. It's giving "the blueprint for a link station" and honestly? iconic. Let's get into it ✨


🌸 NAME

struct link_station_parameters β€” link station parameters πŸŽ€

Like. That's literally what it is. Link station. Parameters. No notes. πŸ‘‘


πŸ¦‹ SYNOPSIS

okay here's the whole struct, and I'm giving it to you exactly as it is, no cap, character for character β€” do not come for me about the spacing, this is the real deal:

struct link_station_parameters {
    const u8 *mld_mac;
    int link_id;
    const u8 *link_mac;
    const u8 *supported_rates;
    u8 supported_rates_len;
    const struct ieee80211_ht_cap *ht_capa;
    const struct ieee80211_vht_cap *vht_capa;
    u8 opmode_notif;
    bool opmode_notif_used;
    const struct ieee80211_he_cap_elem *he_capa;
    u8 he_capa_len;
    struct sta_txpwr txpwr;
    bool txpwr_set;
    const struct ieee80211_he_6ghz_capa *he_6ghz_capa;
    const struct ieee80211_eht_cap_elem *eht_capa;
    u8 eht_capa_len;
    const struct ieee80211_s1g_cap *s1g_capa;
    const struct ieee80211_uhr_cap *uhr_capa;
    u8 uhr_capa_len;
 };

lowkey a lot of fields but we're gonna go through every single one, bestie. buckle up. 🌈


πŸŽ€ Members

  • mld_mac β€” the MAC address of the station πŸ’– fr fr, that's the whole vibe.
  • link_id β€” the link id. and oop, it's -1 for a non-MLD station, iykyk πŸ‘€
  • link_mac β€” MAC address of the link ✨
  • supported_rates β€” supported rates, in IEEE 802.11 format. or NULL for no change β€” yes, NULL is a valid mood here 🫢
  • supported_rates_len β€” how many supported rates there are. the count. the receipts. πŸ”₯
  • ht_capa β€” HT capabilities of the station ⭐
  • vht_capa β€” VHT capabilities of the station πŸ’œ
  • opmode_notif β€” the operating mode field, straight from Operating Mode Notification πŸ‘‘
  • opmode_notif_used β€” tells you whether the operating mode field is used. it's a yes/no situation, bestie πŸ™ˆ
  • he_capa β€” HE capabilities of the station 🌸
  • he_capa_len β€” the length of the HE capabilities. gotta know how big it is πŸ’…
  • txpwr β€” transmit power for an associated station, type struct sta_txpwr πŸ”₯
  • txpwr_set β€” says the txpwr field is set βœ…
  • he_6ghz_capa β€” HE 6 GHz Band capabilities of the station πŸ¦‹ (6 GHz girlies rise)
  • eht_capa β€” EHT capabilities of the station ✨
  • eht_capa_len β€” the length of the EHT capabilities πŸŽ€
  • s1g_capa β€” S1G capabilities of the station 🌿
  • uhr_capa β€” UHR capabilities of the station πŸ’«
  • uhr_capa_len β€” the length of the UHR capabilities 🌟

that's the whole roster. every field accounted for. no one left behind. periodt. πŸ’…


🧚 Description

okay so what is this thing for? literally just: it's used to change and create a new link station. that's it. that's the whole job. it's giving "glow-up AND origin story" at the same time 😭✨


bestie we are not done β€” more parts are coming, so don't go anywhere πŸ’–

🫢 Data path helpers

πŸ’œ Regulatory enforcement infrastructure

🌸 Internal regulatory db functions

πŸŽ€ RFkill integration

⭐ Vendor commands

πŸ¦‹ Test mode

Okay so this next bit is basically the group chat roster of every other function that vibes with this struct, and yes, we're listing all of them, because gatekeeping is not the move πŸ’…

That's the whole squad, bestie β€” not one single name left behind, fr fr. If you're the kind of person who reads SEE ALSO sections for fun (respect, honestly, same energy), this is your little TBR pile 🌸 every single one of those has its own page waiting for you.


And that's a wrap on struct link_...n_parameters(9)! πŸŽ€ This lil masterpiece lives in the kernel API manual, straight out of the source tree at ./include/net, and it's dated October 2026 ✨ Go forth, configure your links, and slay πŸ’…πŸ¦‹

πŸ“¦ where this page comes from