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-fbb9cc7ac...@jannau.net/ --- 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 <[email protected]>

