STRUCT BRCMF_BTCOEX_INFO(9)
πΈ 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 thingcfgβ driver private data for thecfg80211interface π₯reg66β saved value ofbtc_params 66reg41β saved value ofbtc_params 41reg68β saved value ofbtc_params 68saved_regs_part1β flag indicating regs66,41,68have been saved βreg50β saved value ofbtc_params 50reg51β saved value ofbtc_params 51reg64β saved value ofbtc_params 64reg65β saved value ofbtc_params 65reg71β saved value ofbtc_params 71saved_regs_part2β flag indicating regs50,51,64,65,71have been saved β β
ngl thepart1/part2split 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:
enum brcmf_btcoex_state(9)brcmf_btcoex_params_write(9)brcmf_btcoex_params_read(9)brcmf_btcoex_boost_wifi(9)brcmf_btcoex_is_sco_active(9)brcmf_btcoex_handler(9)brcmf_btcoex_attach(9)brcmf_btcoex_detach(9)
π 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
- 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