wiphy_register(9)

๐Ÿ“ฆ version 7.3.1, in nixpkgs unstable

๐Ÿ’– wiphy_register(9) ๐Ÿ’–

okay so bestie, welcome to the Kernel API Manual โœจ โ€” this one's called wiphy_register(9) and it's literally the glow-up moment for your wireless device. let's get into it ๐ŸŽ€


๐ŸŒธ NAME ๐ŸŒธ

wiphy_register โ€” register a wiphy with cfg80211 ๐Ÿฆ‹

like, you made a whole wiphy. now introduce it to the world. slay ๐Ÿ’…


โœจ SYNOPSIS โœจ

int wiphy_register (struct wiphy *wiphy );

that's it. one function, one pointer, big main character energy ๐Ÿ‘‘


๐Ÿซถ ARGUMENTS ๐Ÿซถ

  • wiphy โ€” The wiphy to register. ๐Ÿงš that's your baby! the struct you've been building up this whole time. hand it over and let cfg80211 know she exists ๐Ÿ’–

โญ RETURN โญ

you get back a non-negative wiphy index โ€” yay, you're official, here's your number bestie ๐ŸŽ‰

or a negative error code โ€” ๐Ÿ˜ญ which means something went wrong, no cap. check it, seriously, don't just ignore it ๐Ÿ™ˆ


ngl the return value is doing double duty here: <pink>index โ‰ฅ 0</pink> = success, <red>index < 0</red> = error. vibe check your result before you celebrate ๐Ÿ’€

part 1 out of 3, bestie โ€” there's more coming, don't go anywhere ๐ŸŒˆ

๐ŸŒˆ SEE ALSO ๐ŸŒˆ

okay bestie, breathe. this is the part of the page where it just... hands you the entire extended family ๐Ÿ’€ like not a vibe-check, a vibe-flood. but honestly it's giving "here's everyone who has ever been in the group chat", and the order below is the order they came in, so nothing got dropped. read it like a guest list ๐ŸŽ€

  • the kernel file it lives in: ./include/net/cfg80211.h โ€” that's the source of truth, the mothership ๐Ÿ’–
  • Introduction(9), Device registration(9) โ€” start here if you're brand new, no cap


๐Ÿ’… Actions and configuration ๐Ÿ’…

this chunk is lowkey huge:


๐ŸŒธ Scanning and BSS list handling ๐ŸŒธ

  • 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) โญ

๐Ÿฆ‹ Neighbor Awareness Networking (NAN) ๐Ÿฆ‹


๐ŸŽ€ Utility functions ๐ŸŽ€


๐Ÿซถ Data path helpers ๐Ÿซถ


๐Ÿ‘‘ Regulatory enforcement infrastructure ๐Ÿ‘‘

๐ŸŒŸ Internal regulatory db functions ๐ŸŒŸ


๐Ÿงš RFkill integration ๐Ÿงš

๐Ÿ’– Vendor commands ๐Ÿ’–

โญ Test mode โญ


and then the final stretch, no heading, just vibes:

and yeah โ€” the list literally just ends on a comma and then stops, we love an unfinished sentence vibe ๐Ÿ˜ญ that's the whole guest list bestie, iykyk ๐ŸŽ€


...and it literally just keeps going, bestie ๐Ÿ˜ญ like okay the roster is huge but every single one of these is invited to the group chat:


okay that's genuinely the whole squad, and yes i put an emoji on every single one because they deserve it ๐Ÿ’… go click through them, they're all iconic in their own little way.

and for the credits moment ๐ŸŽฌ โ€” this page lives in the source dir ./include/net, it's dated October 2026, and the whole thing is filed under wiphy_register(9). slay, go register something ๐Ÿซถ๐Ÿ’–

๐Ÿ“ฆ where this page comes from