brcmf_p2p_se...scover_state(9)
π
brcmf_p2p_se...scover_state(9) β the Kernel API Manual, bestie edition π
okay so this is <pink>brcmf_p2p_set_discover_state</pink> from the Kernel API Manual, and honestly? it's a tiny little function with a big job. let's get into it β¨
β¨ NAME β¨
brcmf_p2p_set_discover_state β literally just sets the discover state in firmware. that's the whole vibe. no cap. π¦
πΈ SYNOPSIS πΈ
s32 brcmf_p2p_set_discover_state (struct brcmf_if *ifp , u8 state , u16 chanspec , u16 listen_ms );
like, that's the signature, bestie. returns an s32, takes four things. slay. π
π ARGUMENTS π
here's the cast of characters, main character energy only:
ifpβ the low-level interface object. it's giving "the actual handle we're working with" π«Άstateβ the discover state to set. this is the whole point of the function ngl πchanspecβ channel parameters, and lowkey it only applies for stateWL_P2P_DISC_ST_LISTENπ like, only then. iykyk.listen_msβ duration to listen, measured in ms, and same deal: only for stateWL_P2P_DISC_ST_LISTENβ
fr fr, those last two are conditional. don't come for me, it's in the source. WL_P2P_DISC_ST_LISTEN or nothing, periodt. π
π₯ SEE ALSO π₯
the kernel file lives at ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c β that's the mothership π§
and here's the whole friend group, ok there are SO many, buckle up π:
struct brcmf_p2p_disc_st_le(9)enum brcmf_p2p_disc_state(9)struct brcmf_p2p_scan_le(9)struct brcmf_p2p_pub_act_frame(9)struct brcmf_p2p_action_frame(9)struct brcmf_p2psd_gas_pub_act_frame(9)struct brcmf_config_af_params(9)brcmf_p2p_is_pub_action(9)brcmf_p2p_is_dpp_pub_action(9)brcmf_p2p_is_p2p_action(9)brcmf_p2p_is_gas_action(9)brcmf_p2p_print_actframe(9)brcmf_p2p_set_firmware(9)brcmf_p2p_generate_bss_mac(9)brcmf_p2p_scan_is_p2p_request(9)brcmf_p2p_deinit_discovery(9)brcmf_p2p_enable_discovery(9)brcmf_p2p_escan(9)brcmf_p2p_run_escan(9)brcmf_p2p_find_listen_channel(9)brcmf_p2p_scan_prep(9)brcmf_p2p_discover_listen(9)brcmf_p2p_remain_on_channel(9)brcmf_p2p_notify_listen_complete(9)brcmf_p2p_cancel_remain_on_channel(9)brcmf_p2p_act_frm_search(9)brcmf_p2p_afx_handler(9)brcmf_p2p_af_searching_channel(9)brcmf_p2p_scan_finding_common_channel(9)brcmf_p2p_abort_action_frame(9)brcmf_p2p_stop_wait_next_action_frame(9)brcmf_p2p_gon_req_collision(9)brcmf_p2p_notify_action_frame_rx(9)brcmf_p2p_notify_action_tx_complete(9)brcmf_p2p_tx_action_frame(9)brcmf_p2p_pub_af_tx(9)brcmf_p2p_send_action_frame(9)brcmf_p2p_notify_rx_mgmt_p2p_probereq(9)brcmf_p2p_get_current_chanspec(9)brcmf_p2p_ifchange(9)brcmf_p2p_create_p2pdev(9)brcmf_p2p_add_vif(9)brcmf_p2p_del_vif(9)brcmf_p2p_attach(9)brcmf_p2p_detach(9)
likeβ¦ that's the whole brcmf p2p cinematic universe and we're just living in it ππ
and that's the page, bestie!! π«Ά the source lives at ./drivers/net/wireless/broadco... (truncated, iconic), dated October 2026, and it all signs off as brcmf_p2p_se...scover_state(9) β go read the actual source, it ate πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms