STRUCT BRCMFMAC_PLATFORM_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct brcmfmac_platform_data β€” BRCMFMAC specific platform data ✨

okay so bestie, welcome to the struct brcmfmac_platform_data(9) page from the Kernel API Manual πŸŽ€ this is the little bundle of platform-specific hooks that the BRCMFMAC driver picks up, and honestly? she's giving "small struct, big responsibilities" energy πŸ‘‘


🌸 SYNOPSIS 🌸

struct brcmfmac_platform_data {
    void (*power_on)(void);
    void (*power_off)(void);
    char *fw_alternative_path;
    int device_count;
    struct brcmfmac_pd_device devices[];
 };

no cap, that's the whole shape of her 🫢


✨ Members ✨

🧚 power_on

so this function pointer gets called by the brcmfmac driver when the module gets loaded, periodt πŸ’« and like, it's particularly useful for low power devices β€” the platform specific routine may for example decide to power up the complete device. main character move tbh πŸ”₯

and if there's genuinely no use-case for this function? then provide NULL. that's it, that's the vibe πŸ’…

πŸŽ€ power_off

this one gets called by the brcmfmac when the module gets unloaded πŸ¦‹ at that point the devices can be powered down or otherwise be reset. so listen β€” if an actual power_off is not supported but reset is supported by the devices, then reset the devices when this function gets called, okay? iykyk 😌

same deal as her sister above: particularly useful for low power devices, and if there is no use-case for this function then provide NULL πŸ™ˆ

πŸ’œ fw_alternative_path

she's in the struct, bestie β€” listed right there in the synopsis and she counts πŸ’œ (char *, for the record).

⭐ device_count

int device_count β€” also a member, also present, also not skipped, because we do not skip members on this page 🫢

🌈 devices[]

struct brcmfmac_pd_device devices[] β€” the flexible array member at the end of the struct, exactly as declared ✨

fair warning bestie: this page spells out the deets for power_on and power_off, and the other members just sit there in the struct definition. no invented lore, no made-up behaviour, we don't do that here πŸ’€

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./include/linux/platform_data/brcmfmac.h
  • struct brcmfmac_sdio_pd(9)
  • struct brcmfmac_pd_cc_entry(9)
  • struct brcmfmac_pd_cc(9)
  • struct brcmfmac_pd_device(9)

and that's the whole page, bestie, you ate that πŸ“ this icon lives in ./include/linux/platform_data, dated October 2026, and she answers to the name struct brcm...latform_data(9) β€” go off πŸ‘‘πŸ’–

πŸ“¦ where this page comes from