STRUCT BRCMF_PNO_CONFIG_LE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

struct brcmf_pno_config_le β€” the PNO channel configuration, bestie. That's it, that's the vibe ✨

Oh also, hi, welcome to the Kernel API Manual β€” section 9, we're deep in kernel-struct territory and honestly it's kind of iconic in here πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

Okay so here's the whole struct, copy-paste-exact, no cap:

struct brcmf_pno_config_le {
    __le32 reporttype;
    __le32 channel_num;
    __le16 channel_list[BRCMF_NUMCHANNELS];
    __le32 flags;
 };

Not me being obsessed with how tidy that is 😭 little __le endian-tagged fields, living their best life.


🌸 Members 🌸

  • reporttype β€” literally determines what gets reported πŸ’– that's the whole job.
  • channel_num β€” the number of channels you specified in channel_list. Count them! Be honest! 🫢
  • channel_list β€” the actual channels to use in the PNO scan, an array of BRCMF_NUMCHANNELS of them. The main characters, fr fr πŸ‘‘
  • flags β€” reserved πŸ™ˆ like, it's sitting there, it's reserved, we don't touch it.

⭐ SEE ALSO ⭐

The lore lives in the kernel file ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h β€” that's the source of truth, go read it 🧚

And because this struct runs in a whole friend group, here's the entire crew, all of them documented in section 9, all of them linked here:

  • struct brcmf_wsec_pmk_le(9)
  • struct brcmf_wsec_sae_pwd_le(9)
  • struct brcmf_fil_wowl_pattern_le(9)
  • struct brcmf_fil_country_le(9)
  • struct brcmf_rev_info_le(9)
  • struct brcmf_wlc_version_le(9)
  • struct brcmf_assoclist_le(9)
  • struct brcmf_rssi_be(9)
  • struct brcmf_wowl_wakeind_le(9)
  • struct brcmf_pmksa(9)
  • struct brcmf_pmksa_v2(9)
  • struct brcmf_pmksa_v3(9)
  • struct brcmf_pmk_list_le(9)
  • struct brcmf_pmk_list_v2_le(9)
  • struct brcmf_pmk_op_v3_le(9)
  • struct brcmf_pno_param_le(9)
  • struct brcmf_pno_net_param_le(9)
  • struct brcmf_pno_net_info_le(9)
  • struct brcmf_pno_scanresults_le(9)
  • struct brcmf_pno_macaddr_le(9)
  • struct brcmf_dload_data_le(9)
  • struct brcmf_pno_bssid_le(9)
  • struct brcmf_pktcnt_le(9)
  • struct brcmf_gtk_keyinfo_le(9)
  • struct brcmf_gscan_bucket_config(9)
  • enum brcmf_gscan_cfg_flags(9)
  • struct brcmf_gscan_config(9)
  • struct brcmf_mkeep_alive_pkt_le(9)

Twenty-eight structs and one enum, and yes I counted, and yes it ate πŸ’€πŸ”₯


Heads up bestie: the file path down in the footer got cut off as ./drivers/net/wireless/broadco... β€” so if you're copying it out of there, just know it's truncated, the full one above is the move πŸ’…

πŸŽ€ byeee πŸŽ€

Signing off from the bottom of the page: this one comes to you from ./drivers/net/wireless/broadco... and is dated October 2026, and it is officially titled struct brcmf_pno_config_le(9). Slay, go configure some PNO channels βœ¨πŸ’œπŸ¦‹

πŸ“¦ where this page comes from