With some modification in kernel brcmfmac driver, the chip id of BCM43454/6 is 0xa9be(43454), which is not supported in upstream driver.
However, after adding the 0xa9be id to the driver and load the radxa-provided firmware, its chip id becomes 0x4345 and it is recorgnized as BCM4345/6. I guess the BCM43454/6 and BCM4345/6 are the same chip, but the former one seems to be an older variant.
The radxa-provided firmware (7.45.96.76) got some bugs. WPA3 is not supported. When power management is on, the driver will crash after hardware enters standby mode.
I tried crossflash the cypress firmware for raspberry pi 3b/4b (7.45.241, https://github.com/RPi-Distro/firmware-nonfree/tree/bullseye/debian/config/brcm80211/cypress), both WPA3 and power management works. WPA3 is still not supported,but power management seems to be working. This firmware wonāt change chip id as well.
Also tried inbox firmware in Ubuntu 20.04, linux-firmware 1.187.25 (7.45.18) and Ubuntu 21.10, linux-firmware 1.201.3 (7.45.234). Both seems to be working, except WPA3, and the chip id remains 0xa9be.
Patches for enabling BCM43454/6 (0xa9be) chip is uploaded to https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next.git/commit/?id=ed26edf7bfd9aa3ea23299c949312c5313c115b8
Steps to install radxa nvram and cypress 7.45.241 firmware. Only downloading radxa nvram file and using the inbox firmware will also work.
# Download radxa nvram
sudo wget https://raw.githubusercontent.com/radxa/rkwifibt/master/firmware/broadcom/AP6254/wifi/nvram_ap6254.txt -O "/lib/firmware/brcm/brcmfmac43455-sdio.Radxa-ROCK Pi X.txt"
# Backup existing firmware file
sudo mv /lib/firmware/brcm/brcmfmac43455-sdio.bin /lib/firmware/brcm/brcmfmac43455-sdio.bin.bak
sudo mv /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob.bak
# Download latest 7.45.241 firmware
sudo wget https://raw.githubusercontent.com/RPi-Distro/firmware-nonfree/bullseye/debian/config/brcm80211/cypress/cyfmac43455-sdio.bin -O /lib/firmware/brcm/brcmfmac43455-sdio.bin
sudo wget https://raw.githubusercontent.com/RPi-Distro/firmware-nonfree/bullseye/debian/config/brcm80211/cypress/cyfmac43455-sdio.clm_blob -O /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob
And the wlan mac is defined in the nvram txt file. If you got multiple boards, you need to modify them to different values to use them under same network.