ieee80211_chandef_to_khz(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ ieee80211_chandef_to_khz(9) ✨

okay so this one comes straight outta the Kernel API Manual, and bestie, it’s part 1 of 3 β€” more incoming, don’t wander off πŸ’–

🌸 NAME 🌸

ieee80211_chandef_to_khz β€” convert a chandef into a frequency in KHz, periodt. ✨

πŸ¦‹ SYNOPSIS πŸ¦‹

u32 ieee80211_chandef_to_khz (const struct cfg80211_chan_def *chandef );

πŸŽ€ ARGUMENTS πŸŽ€

  • chandef β€” the chandef you want converted, bestie. That’s literally the assignment. πŸ’…

πŸ’œ RETURN πŸ’œ

It hands you back the center frequency of chandef β€” specifically the 1st segment β€” in KHz. No cap, that’s the whole vibe. 🌈

✨ SEE ALSO ✨

okay so this is the part where the page just lists everyone β€” it's giving yearbook, it's giving group-chat member roll, it's giving "tag yourself i'm struct cfg80211_chan_def(9)" πŸ’… every single one of these is a (9) page you can go read, and yes bestie, we're listing all of them, no skipping, no "etc.", because the kernel does not do "etc." 🫢



πŸ¦‹ Device registration(9) & the band/PHY fam

note the difference between _ieee80211_set_sband_iftype_data(9) and ieee80211_set_sband_iftype_data(9) β€” one has the underscore, one doesn't, and that is not a typo, do not come for me 😭


🌸 Actions and configuration(9)

this chunk is lowkey the main character of the whole page ngl β€” it's got the chandef besties AND the station besties AND the mesh besties all in one ✨


πŸŽ€ Scanning and BSS list handling(9)

  • Scanning and BSS list handling(9)
  • struct cfg80211_ssid(9)
  • struct cfg80211_scan_info(9)
  • struct cfg80211_scan_6ghz_params(9)
  • struct cfg80211_scan_request(9)
  • struct cfg80211_match_set(9)
  • struct cfg80211_sched_scan_plan(9)
  • struct cfg80211_bss_select_adjust(9)
  • struct cfg80211_sched_scan_request(9)
  • enum cfg80211_signal_type(9)
  • struct cfg80211_inform_bss(9)
  • struct cfg80211_bss_ies(9)
  • struct cfg80211_bss(9)
  • ieee80211_bss_get_elem(9)
  • ieee80211_bss_get_ie(9)
  • struct cfg80211_auth_request(9)
  • struct cfg80211_assoc_link(9)
  • struct cfg80211_ml_reconf_req(9)
  • enum cfg80211_assoc_req_flags(9)
  • struct cfg80211_assoc_request(9)
  • struct cfg80211_deauth_request(9)
  • struct cfg80211_disassoc_request(9)
  • struct cfg80211_ibss_params(9)
  • struct cfg80211_bss_selection(9)
  • struct cfg80211_connect_params(9)
  • enum cfg80211_connect_params_changed(9)
  • enum wiphy_params_flags(9)
  • struct cfg80211_pmksa(9)
  • struct cfg80211_pkt_pattern(9)
  • struct cfg80211_wowlan_tcp(9)
  • struct cfg80211_wowlan(9)
  • struct cfg80211_coalesce_rules(9)
  • struct cfg80211_coalesce(9)
  • struct cfg80211_wowlan_nd_match(9)
  • struct cfg80211_wowlan_nd_info(9)
  • struct cfg80211_wowlan_wakeup(9)
  • struct cfg80211_gtk_rekey_data(9)
  • struct cfg80211_update_ft_ies_params(9)
  • struct cfg80211_mgmt_tx_params(9)
  • struct cfg80211_dscp_exception(9)
  • struct cfg80211_dscp_range(9)
  • struct cfg80211_qos_map(9)

scanning, connecting, wowlan, QoS β€” the whole "how do i even get on a network" saga, all in one block πŸ¦‹


πŸ’œ Neighbor Awareness Networking (NAN)(9) and the power/PMKSR corner

the wiphy_* run is literally the "register your device, lock it, queue work, cancel work, flush work, do it all again with a delay and a hrtimer" saga and honestly? iconic πŸ”₯ and yes wiphy_hrtimer_work_pending(9) is real, it's not me making things up πŸ’€


🧚 Utility functions(9)

the _khz vs _frequency twin situation is real β€” both exist, both are listed, don't @ me πŸ“


🌈 Data path helpers(9)

_elem vs _ie is the same energy as _ext_elem vs _ext_ie and _vendor_elem vs _vendor_ie β€” yes there are three of each, yes you have to remember which is which, no i will not be taking questions πŸ’€ (jk i will, that's what the pages are for 🫢)


⭐ Regulatory enforcement infrastructure(9)

the region-locking of the wireless world, and yes regulatory_set_wiphy_regd_sync(9) is the synchronous one, it's right there in the name, slay ✨


🌸 Internal regulatory db functions(9) + the notify/scan-done zone

double underscore besties at the front of __cfg80211_get_bss(9) β€” that's the internal one, and yup it gets its own page too πŸ’…


πŸŽ€ RFkill integration(9)

the literal "airplane mode but make it kernel API" block ✈️


πŸ’œ Vendor commands(9)

note cfg80211_vendor_event_alloc_ucast(9) β€” that's the unicast alloc, and it's there, and it's not optional, we list it πŸ¦‹


🧚 Test mode(9)


πŸ”₯ the giant finale chunk (connect / roam / mgmt / CQM / radar)

genuine vibe check bestie: this list is LONG and that's the whole point β€” every single (9) above is a real page, so if you see a name in the wild and you're like "wait is that a thing", scroll up, it's probably here 😭

and that's the list!! (well β€” the list for this part, there's more page after this so don't close the tab yet 🫢)


and that's the whole crew, bestie β€” every single reference, no skips, no shortcuts 🫢✨

this page is brought to you by the fine folks at ./include/net, dated October 2026, and the star of the show is ieee80211_chandef_to_khz(9). mwah, go convert some channel definitions, ily, bye πŸ’…πŸŽ€πŸŒˆ

πŸ“¦ where this page comes from