STRUCT BRCMF_FIL_WOWL_PATTERN_LE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct brcmf_fil_wowl_pattern_le β€” NAME πŸ’–

okay so bestie, gather round: struct brcmf_fil_wowl_pattern_le is the wowl pattern configuration struct. that's it, that's the whole name section, but trust me it's lowkey iconic πŸ’…

(also hi, you're reading the Kernel API Manual, section 9 β€” yes the fancy kernel one, no cap ✨)


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the whole glow-up, character for character, don't touch anything:

struct brcmf_fil_wowl_pattern_le {
    u8 cmd[4];
    __le32 masksize;
    __le32 offset;
    __le32 patternoffset;
    __le32 patternsize;
    __le32 id;
    __le32 reasonsize;
    __le32 type;
 };

it's giving "small struct, big responsibilities" fr fr 🌸


✨ Members ✨

okay now the main characters, one by one, no skipping, we respect all of them 🫢

  • cmd β€” this one's the vibe check: "add", "del" or "clr". that's literally the whole personality. a 4-byte u8 array carrying the drama πŸŽ€
  • masksize β€” size of the mask in #of bytes. (yes the original says "#of bytes", we're keeping it exactly, it's canon πŸ’€)
  • offset β€” pattern byte offset in packet. like, where in the packet the pattern starts living 🏠
  • patternoffset β€” offset of start of pattern. Starting from field masksize. so it's not from the top of the struct, bestie, it's from the end of the mask field β€” read the fine print, iykyk πŸ‘€
  • patternsize β€” size of the pattern itself in #of bytes πŸ”₯
  • id β€” id. that's it. that's the description. the manpage said what it said and honestly? respect to the minimalism πŸ’€βœ¨
  • reasonsize β€” size of the wakeup reason code 🌈
  • type β€” type of pattern, and it's enums o'clock: (enum brcmf_wowl_pattern_type) πŸ‘‘

🌟 SEE ALSO 🌟

these are all the siblings, the whole friend group, and we are NOT leaving anyone out of the group chat:

Kernel file: ./drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h β€” that's where this struct actually lives, go say hi 🧚
  • struct brcmf_wsec_pmk_le(9)
  • struct brcmf_wsec_sae_pwd_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_config_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)

and that's the whole page, bestie! πŸŽ€ this fabulous little writeup came out of the fine folks over at ./drivers/net/wireless/broadco... β€” stunning, gorgeous, October 2026 πŸ’œπŸ’…

slay, go read your kernel headers, ily, bye! πŸ’–βœ¨

πŸ“¦ where this page comes from