cfg80211_mlo...onf_add_done(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– cfg80211_mlo...onf_add_done(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” yes that's the actual manual name, we're in kernel land now, put your seatbelt on πŸŽ€


✨ NAME ✨

cfg80211_mlo_reconf_add_done β€” the little "we're done here!" notifier for MLO reconfiguration results πŸ¦‹


🌈 SYNOPSIS 🌈

void cfg80211_mlo_reconf_add_done (struct net_device *dev , struct
       cfg80211_mlo_reconf_done_data *data );

literally that's it. a void function, no return value, no drama πŸ’…


πŸ“ ARGUMENTS πŸ“

  • dev β€” the network device. yeah, the actual struct net_device * bestie, the whole device πŸ’–
  • data β€” the MLO reconfiguration done data, and it's a struct cfg80211_mlo_reconf_done_data β€” say that five times fast, i dare you 😭

πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the vibe: you call this to inform cfg80211 and the userspace that the processing of an ML reconfiguration request β€” specifically the one that adds links to the association β€” is done ✨

that's the whole assignment. tell the kernel ecosystem the add-links reconfig finished. no cap, that's literally it 🫢

ngl this is the "mission accomplished" text of the wireless world β€” send it when the work is actually finished, not before πŸ’€

✨ SEE ALSO ✨

okay bestie, buckle up πŸ’… because this section is long β€” it's basically the entire cfg80211 cinematic universe handing you its contact list. iykyk. nothing here is skippable, so we're doing all of it, in order, no cuts πŸŽ€

  • the kernel file ./include/net/cfg80211.h, plus Introduction(9), Device registration(9), enum ieee80211_channel_flags(9), struct ieee80211_channel(9), enum ieee80211_rate_flags(9), enum ieee80211_bss_type(9), enum ieee80211_privacy(9), struct ieee80211_rate(9)

then the capability girlies ✨ β€” the caps stack goes hard here:

  • struct ieee80211_he_obss_pd(9), struct cfg80211_he_bss_color(9), struct ieee80211_sta_ht_cap(9), struct ieee80211_sta_vht_cap(9), struct ieee80211_sta_he_cap(9), struct ieee80211_eht_mcs_nss_supp(9), struct ieee80211_sta_eht_cap(9), struct ieee80211_sta_uhr_cap(9), struct ieee80211_sband_iftype_data(9), enum ieee80211_edmg_bw_config(9), struct ieee80211_edmg(9), struct ieee80211_sta_s1g_cap(9), struct ieee80211_supported_band(9)

and the helpers that touch all that 🫢:


the "Actions and configuration" era πŸ’–

  • Actions and configuration(9), struct vif_params(9), struct key_params(9), struct cfg80211_chan_def(9), struct cfg80211_tid_cfg(9), struct cfg80211_tid_config(9), struct cfg80211_fils_aad(9), struct cfg80211_set_hw_timestamp(9)

the chandef section is its own little fandom, lowkey obsessed 🌈:

then the survey + AP-era structs, which are giving "beacon frame but make it fashion" πŸ¦‹:

  • enum survey_info_flags(9), struct survey_info(9), struct cfg80211_crypto_settings(9), struct cfg80211_mbssid_config(9), struct cfg80211_mbssid_elems(9), struct cfg80211_rnr_elems(9), struct cfg80211_beacon_data(9), struct cfg80211_acl_data(9), struct cfg80211_fils_discovery(9), struct cfg80211_unsol_bcast_probe_resp(9), struct cfg80211_s1g_short_beacon(9), struct cfg80211_ap_settings(9), struct cfg80211_ap_update(9), struct cfg80211_csa_settings(9), struct cfg80211_color_change_settings(9), struct iface_combination_params(9)

stations get a whole glow-up πŸ’… (the way there are so many of these):

  • enum station_parameters_apply_mask(9), struct sta_txpwr(9), struct link_station_parameters(9), struct link_station_del_parameters(9), struct cfg80211_ttlm_params(9), struct station_parameters(9), struct station_del_parameters(9), enum cfg80211_station_type(9), cfg80211_check_station_change(9)

rates, BSS params, txq/tid stats, and the big station_info moment ⭐:

  • enum rate_info_flags(9), enum rate_info_bw(9), struct rate_info(9), enum bss_param_flags(9), struct sta_bss_parameters(9), struct cfg80211_txq_stats(9), struct cfg80211_tid_stats(9), struct link_station_info(9), struct station_info(9)

SAR specs, mesh, OCB, txq params β€” the whole "misc but mandatory" friend group πŸ“:

  • struct cfg80211_sar_sub_specs(9), struct cfg80211_sar_specs(9), struct cfg80211_sar_freq_ranges(9), struct cfg80211_sar_capa(9), cfg80211_get_station(9), enum monitor_flags(9), enum mpath_info_flags(9), struct mpath_info(9), enum wiphy_bss_param_flags(9), struct bss_parameters(9), struct mesh_config(9), struct mesh_setup(9), struct ocb_setup(9), struct ieee80211_txq_params(9)

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)

auth / assoc / deauth / disassoc / ibss / connect β€” the connection journey arc 🧚:

  • 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)

PMKSA, packet patterns, and the wowlan + coalesce family (sleepover energy 😴):

  • 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)

GTK rekey, FT ies, mgmt tx params, DSCP + QoS map πŸŽ€:

  • 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)

Neighbor Awareness Networking (NAN) πŸ‘‘

  • 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)

then PMK conf, external auth, FTM responder stats, and the whole PMSR saga πŸ“‘:

  • 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)

the cfg80211_ops / wiphy config chapter πŸ’œ

  • struct cfg80211_ops(9), enum wiphy_flags(9), struct ieee80211_iface_limit(9), struct ieee80211_iface_combination(9), enum wiphy_wowlan_support_flags(9), struct wiphy_wowlan_support(9), struct wiphy_coalesce_support(9), enum wiphy_vendor_command_flags(9), enum wiphy_opmode_flag(9), struct sta_opmode_info(9), struct wiphy_vendor_command(9), struct wiphy_iftype_ext_capab(9), cfg80211_get_iftype_ext_capa(9), struct cfg80211_pmsr_capabilities(9), struct wiphy_iftype_akm_suites(9), struct wiphy_radio_cfg(9), struct wiphy_radio_freq_range(9), struct wiphy_radio(9), enum wiphy_nan_flags(9), struct wiphy_nan_capa(9)

struct wiphy + friends (the main character struct) πŸ‘‘

locks + work queueing, because concurrency is that girl πŸ’€:

power + wdev basics 🌸:


Utility functions πŸ› οΈβœ¨

radiotap + header length helpers (hdrlen girlies rise πŸ™ˆ):

Data path helpers πŸš€

the find-the-IE scavenger hunt, fr fr πŸ”:

RNR iteration + defrag + layer2 update πŸŽ€:

Regulatory enforcement infrastructure 🌍

Internal regulatory db functions πŸ—‚οΈ

and then the notification / event flood begins (this is the part where your girl starts typing fast 😭):

MLME mgmt + assoc resp/failure + unprotected mgmt πŸ¦‹:

RFkill integration πŸ”‡

Vendor commands πŸ›οΈ

Test mode πŸ§ͺ

then connect / roam / disconnect notifications, aka the situationship arc πŸ’”βž‘οΈπŸ’–:

station info alloc/free + new/del sta 🫢:

mgmt rx/tx status + control port πŸŽ€:

CQM notifications (rssi / pktloss / txe / beacon loss) 🌸:

radar, cac, opmode, rekey, pmksa candidates β€” the rare-event squad ⚑:

and the final stretch, weird-frame reporting + obss beacon reporting, plus one last struct to close it out 🎬:


okay that's the whole SEE ALSO wall and honestly? iconic that you made it through πŸ§±πŸ‘‘ don't go anywhere though β€” there's still more of this page coming πŸ’–

okay so the list keeps going, and honestly? it's giving ✨*the* most iconic roster*✨. every single one of these bad boys is a real page in the same neighborhood, so if you're link-hopping, here's the rest of the squad πŸ’…

like… sixty-something pages, all cross-referenced, all accounted for 🫢 nothing dropped, nothing skipped, we ate and left zero crumbs. that's the whole SEE ALSO buffet, bestie β€” go wild, open every tab, iykyk 🌈


and that's a wrap on the entire page! πŸ’– no cap, you just read the whole thing. this lil masterpiece lives in the source tree at ./include/net, and it's dated October 2026, version cfg80211_mlo...onf_add_done(9) β€” so when you cite it, cite it right, periodt πŸ‘‘βœ¨πŸŽ€

πŸ“¦ where this page comes from