STRUCT BRCMF_FIRMWARE_MAPPING(9)
π struct brcmf_firmware_mapping(9)
okay so first things first bestie, this is a page from the Kernel API Manual β section 9, the "kernel API" girlies β¨ β and it's all about struct brcmf_firmware_mapping. periodt.
πΈ NAME πΈ
struct brcmf_firmware_mapping β bestie, this struct is literally the matchmaker that maps chipid/revmask to a firmware filename and an nvram filename π
And like, the important part: every single bus type implementation should go ahead and create a table of firmware mappings β using the macros defined below, iykyk. no cap. π
β¨ SYNOPSIS β¨
struct brcmf_firmware_mapping {
u32 chipid;
u32 revmask;
const char *fw_base;
};
look at her. three fields. main character energy. π
π¦ Members π¦
chipidβ the ID of the chip. that's it, that's the vibe check. π«Άrevmaskβ a bitmask of revisions, and the examples are kinda iconic ngl:0x10means rev 4 only0xfmeans rev 0-3
literally a little bitmask baddie. π₯
and yes, fw_base is right there in the struct, but the page doesn't hand you a member description for it β so I'm not gonna make one up. we stay honest on this blog. π
π SEE ALSO π
- Kernel file
./drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.hβ go read the source, it's giving very "the real answers are in the header file" energy. πβ¨
so that's the whole struct, bestie β chip id, revision bitmask, firmware base, and a table your bus type implementation is absolutely supposed to build. slay. π π
π cute sign-off: this one's straight out of./drivers/net/wireless/broadco..., dated October 2026, and it'll forever be known asstruct brcm...ware_mapping(9)(the terminal truncated it, not me, blame the width π). bye bestie, happy hacking! ππ¦π
π¦ 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