[PATCH 00/13] wifi: brcmfmac: Add BCM4388 support
From: Michael Reeves via B4 Relay
Date: Fri Sep 25 2026 - 09:48:06 EST
The Broadcom BCM4388 chipset requires new PCIe initialization and
firmware interfaces. Add support for these interfaces to brcmfmac to
enable basic station operation.
This series adds:
- Signed firmware loading and mailbox transport
- Fixes for chip identification and firmware capability matching
- Versioned scan and join requests, and extended PMK payloads
- Updated event mask handling
These changes include work by Hector Martin and Daniel Berlin from Asahi
Linux, refactored where needed for upstream inclusion.
The series provides basic station support only. 6 GHz support is planned
for a follow-up patchset after this lands. The driver retains legacy
interfaces for older firmware.
Tested on an Apple M3 MacBook Air (J613):
- Device boot and network scanning
- 5 GHz WPA2-PSK association and DHCP
- Bidirectional TCP traffic
Testing required separate Apple PCIe and devicetree patches, as well as
Janne Grunau's port-authorization fix [1].
[1] https://lore.kernel.org/linux-wireless/20260915-brcmfmac-4way-handshake-offload-authenticated-event-v2-1-fbb9cc7ac177@xxxxxxxxxx/
---
Daniel Berlin (1):
wifi: brcmfmac: Support versioned scan parameter layouts
Hector Martin (6):
wifi: brcmfmac: Support newer PCIe core startup and interrupts
wifi: brcmfmac: Negotiate PCIe mailbox transport with firmware
wifi: brcmfmac: Load signed PCIe firmware images
wifi: brcmfmac: Accept newer BSS information versions
wifi: brcmfmac: Support versioned join requests
wifi: brcmfmac: Add BCM4388 support
Michael Reeves (6):
wifi: brcmfmac: pcie: Report the detected chip ID to the bus
wifi: brcmfmac: Match complete firmware capability names
wifi: brcmfmac: Fall back to RSSI-only default join preferences
wifi: brcmfmac: Use event_msgs_ext for event masks
wifi: brcmfmac: Handle larger firmware band lists
wifi: brcmfmac: Handle extended PMK command payloads
.../wireless/broadcom/brcm80211/brcmfmac/Makefile | 1 +
.../net/wireless/broadcom/brcm80211/brcmfmac/bus.h | 9 +
.../broadcom/brcm80211/brcmfmac/cfg80211.c | 368 +++++++-------
.../wireless/broadcom/brcm80211/brcmfmac/chip.c | 36 +-
.../wireless/broadcom/brcm80211/brcmfmac/common.c | 27 +-
.../wireless/broadcom/brcm80211/brcmfmac/core.c | 5 +-
.../wireless/broadcom/brcm80211/brcmfmac/core.h | 18 +
.../wireless/broadcom/brcm80211/brcmfmac/feature.c | 124 ++++-
.../wireless/broadcom/brcm80211/brcmfmac/feature.h | 2 +
.../wireless/broadcom/brcm80211/brcmfmac/fweh.c | 130 ++++-
.../wireless/broadcom/brcm80211/brcmfmac/fweh.h | 1 +
.../broadcom/brcm80211/brcmfmac/fwil_types.h | 141 +++++-
.../wireless/broadcom/brcm80211/brcmfmac/msgbuf.c | 65 ++-
.../wireless/broadcom/brcm80211/brcmfmac/msgbuf.h | 9 +-
.../wireless/broadcom/brcm80211/brcmfmac/pcie.c | 560 +++++++++++++++++----
.../broadcom/brcm80211/brcmfmac/scan_param.c | 416 +++++++++++++++
.../broadcom/brcm80211/brcmfmac/scan_param.h | 13 +
.../broadcom/brcm80211/include/brcm_hw_ids.h | 2 +
.../broadcom/brcm80211/include/chipcommon.h | 5 +
19 files changed, 1593 insertions(+), 339 deletions(-)
---
base-commit: 42a9fb3382fc2573e92f41d203b095d9a372cfc9
change-id: 20260925-brcm4388-submit-5cb8d3e6d6a5
Best regards,
--
Michael Reeves <michael.reeves077@xxxxxxxxx>