cfg80211_ch...arted_notify(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

๐Ÿ’– cfg80211_ch_switch_started_notify(9) ๐Ÿ’–

okay so bestie, welcome to the Kernel API Manual โœจ this one's called cfg80211_ch_switch_started_notify and honestly? iconic name, does exactly what it says on the tin. it's a function, it's in section 9, periodt. ๐ŸŽ€


๐ŸŒธ NAME ๐ŸŒธ

cfg80211_ch_switch_started_notify โ€” notify channel switch start ๐Ÿ’…


โœจ SYNOPSIS โœจ

void cfg80211_ch_switch_started_notify (struct net_device *dev , struct
       cfg80211_chan_def *chandef , unsigned int link_id , u8 count , bool
       quiet );

like, look at her. five whole arguments. main character energy fr fr ๐ŸŒˆ


๐ŸŽ€ ARGUMENTS ๐ŸŽ€

  • dev โ€” the device on which the channel switch started, iykyk ๐Ÿฆ‹
  • chandef โ€” the future channel definition โ€” yes bestie, the future one, she's ahead of her time โœจ
  • link_id โ€” the link ID for MLO, and โš ๏ธ it must be 0 for non-MLO. no cap, that's a hard requirement, don't come crying to me ๐Ÿ˜ญ
  • count โ€” the number of TBTTs until the channel switch happens โณ so like, how many beacons until the glow-up
  • quiet โ€” whether or not immediate quiet was requested by the AP ๐Ÿคซ the AP said shhh and this bool is the receipts

๐ŸŒŸ DESCRIPTION ๐ŸŒŸ

So what does she actually do? she informs the userspace about a channel switch that has just started ๐Ÿš€ and the whole point is letting userspace take appropriate actions โ€” like, for example, starting a channel switch on other vifs โ€” if necessary. that's the whole vibe. she's the messenger, not the manager ๐Ÿ’–

ngl bestie, the โ€œif necessaryโ€ is doing a lot of work there. it's situational. read the room. ๐Ÿ™ˆ

okay that's part 1, more is coming so don't go anywhere ๐Ÿซถ

๐Ÿ”— SEE ALSO ๐Ÿ”—

okay bestie, this is the list. every single cross-reference, and there's like a hundred of them ๐Ÿ’€ i grouped them so you can actually find stuff instead of doom-scrolling. every name is verbatim, don't come for me.


๐Ÿ“ the file itself

  • ./include/net/cfg80211.h โ€” the actual kernel file, this is the mothership ๐Ÿš€

๐Ÿผ the soft intro stuff

๐Ÿ“ก channels, rates + band capabilities (the phy core)

โš™๏ธ actions and configuration (the big one, lowkey iconic)

๐Ÿ” scanning and BSS list handling

  • 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)
  • connecting era โœจ: 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)
  • power save + offload: 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)

๐Ÿ NAN (neighbor awareness networking, the social one)

  • Neighbor Awareness Networking (NAN)(9), struct cfg80211_nan_band_config(9), struct cfg80211_nan_conf(9), struct cfg80211_nan_channel(9), struct cfg80211_nan_local_sched(9), struct cfg80211_nan_peer_map(9), struct cfg80211_nan_peer_sched(9), enum cfg80211_nan_conf_changes(9), struct cfg80211_nan_func_filter(9), struct cfg80211_nan_func(9)

๐Ÿ” auth, ranging + measurement

  • struct cfg80211_pmk_conf(9), struct cfg80211_external_auth_params(9), struct cfg80211_ftm_responder_stats(9), struct cfg80211_pmsr_ftm_result(9), struct cfg80211_pmsr_result(9), struct cfg80211_pmsr_ftm_request_peer(9), struct cfg80211_pmsr_request_peer(9), struct cfg80211_pmsr_request(9), struct cfg80211_update_owe_info(9), struct mgmt_frame_regs(9)

๐Ÿ‘‘ wiphy + the ops (main character energy)

๐Ÿงฐ utility functions

๐Ÿ›ฃ๏ธ data path helpers

๐ŸŒ regulatory enforcement infrastructure

๐Ÿ“ถ scan + BSS notification callbacks

๐Ÿ“จ MLME + assoc events

๐Ÿ›‘ RFkill integration

๐Ÿท๏ธ vendor commands

๐Ÿงช test mode

๐Ÿ’Œ the notification + status girlies (the rest of the alphabet, basically)


that's literally all of them, no cap. if a name's not in here it wasn't in the original either ๐Ÿซถ

okay so the rest of the SEE ALSO list, bestie โ€” this is the part where the manpage just. keeps. going. and honestly? respect. every single one of these is a real page, so go tap in ๐Ÿ’…

the regulatory girlies ๐ŸŒธ

operating class / chandef math ๐Ÿงฎโœจ

interfaces & registration ๐ŸŽ€

the FT / P2P / IE corner ๐Ÿฆ‹

combination / radio stuff ๐Ÿ’œ

NAN besties ๐ŸŒˆ (there are SO many, buckle up)

color change / BSS color ๐ŸŽจ

MLO & debugfs & S1G, the deep cuts ๐Ÿ‘‘


fr fr that's the whole list โ€” if you skipped any of these, go back, I'm literally watching ๐Ÿ‘€

and that's a wrap on the whole page, bestie ๐Ÿ’– this one lives under ./include/net, it's the October 2026 vintage, and it goes by cfg80211_ch...arted_notify(9) โ€” read her, love her, cite her, periodt โœจ๐ŸŽ€

๐Ÿ“ฆ where this page comes from