STRUCT BRCMF_BTCOEX_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 struct brcmf_btcoex_info(9) β€” the Kernel API Manual glow-up 🌸

okay so bestie, we're in the Kernel API Manual today and the star of the show is struct brcmf_btcoex_info(9) β€” think of it as the little backstage notebook where the Broadcom driver keeps all its Bluetooth-coexistence info πŸ’– it's literally called BT coex related information in the NAME, and honestly? iconic, no notes.


✨ SYNOPSIS ✨

here's the whole struct, every field, verbatim, don't @ me:

struct brcmf_btcoex_info {
    struct brcmf_cfg80211_vif *vif;
    struct timer_list timer;
    u16 timeout;
    bool timer_on;
    bool dhcp_done;
    enum brcmf_btcoex_state bt_state;
    struct work_struct work;
    struct brcmf_cfg80211_info *cfg;
    u32 reg66;
    u32 reg41;
    u32 reg68;
    bool saved_regs_part1;
    u32 reg50;
    u32 reg51;
    u32 reg64;
    u32 reg65;
    u32 reg71;
    bool saved_regs_part2;
 };

πŸŽ€ Members πŸŽ€

like, every single one, in order, because we do not skip:

  • vif β€” the interface this whole request was done for, bestie 🫢
  • timer β€” the timer for the DHCP state machine (yes, the DHCP state machine, she's got ✨lore✨)
  • timeout β€” the configured timeout. as in, what you set. that one πŸŽ€
  • timer_on β€” DHCP timer is active, clock's ticking ⏰
  • dhcp_done β€” DHCP finished before T1/T2 timer expiration, slay 🌈
  • bt_state β€” the DHCP state machine state, the main character of the whole struct πŸ’…
  • work β€” the DHCP state machine work, getting scheduled and doing its thing
  • cfg β€” driver private data for the cfg80211 interface πŸ”₯
  • reg66 β€” saved value of btc_params 66
  • reg41 β€” saved value of btc_params 41
  • reg68 β€” saved value of btc_params 68
  • saved_regs_part1 β€” flag indicating regs 66,41,68 have been saved βœ…
  • reg50 β€” saved value of btc_params 50
  • reg51 β€” saved value of btc_params 51
  • reg64 β€” saved value of btc_params 64
  • reg65 β€” saved value of btc_params 65
  • reg71 β€” saved value of btc_params 71
  • saved_regs_part2 β€” flag indicating regs 50,51,64,65,71 have been saved βœ…βœ…
ngl the part1 / part2 split is giving two separate friend groups who both think they're the closest ones 😭 but it's fine, it's fine, they both save their regs and they both have a flag.

πŸ‘€ SEE ALSO πŸ‘€

go read these, fr fr, the whole crew:

  • the kernel file ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/btcoex.c

and the homies:


πŸ’œ one tiny heads-up from the page itself: that source path down in the footer gets truncated to ./drivers/net/wireless/broadco... β€” not me being lazy, that's literally how it shows up, iykyk 🧚

okay that's the whole page and you ate it up πŸ’… bye bestie β€” this one came from ./drivers/net/wireless/broadco... and is dated October 2026, and the footer still signs it struct brcmf_btcoex_info(9), periodt πŸ¦‹

πŸ“¦ where this page comes from