Zero Wifi breaks randomly

I recently got a radxa Zero 1GB and installed the latest image: “radxa-zero-debian-buster-xfce4-arm64-20211121-0245-mbr.img”. Wifi lasts for a few hours and then breaks.
I’ve also tried the following with no luck:

rmmod brcmfmac
modprobe brcmfmac

Here is the log:

dmesg | grep brcmfmac

[ 8.246593] brcmfmac: F1 signature read @0x18000000=0x1541a9a6
[ 8.248750] brcmfmac: brcmf_of_probe: interrupt could not be mapped
[ 8.249712] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.259486] usbcore: registered new interface driver brcmfmac
[ 8.328938] brcmfmac mmc2:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.radxa,zero.txt failed with error -2
[ 8.590371] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.593628] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[ 8.614313] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Mar 30 2016 11:30:56 version 7.45.77.h8.4 FWID 01-ee8a6268

Please download the image from here. The one you were using is pretty old by now.

Updated to: radxa-zero-debian-buster-xfce4-arm64-20220602-0403-mbr
Same issue.

[ 8.175325] brcmfmac: F1 signature read @0x18000000=0x1541a9a6
[ 8.210681] brcmfmac: brcmf_of_probe: interrupt could not be mapped
[ 8.214937] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.224191] usbcore: registered new interface driver brcmfmac
[ 8.309763] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.radxa,zero.txt failed with error -2
[ 8.598930] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.602211] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[ 8.623013] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Mar 30 2016 11:30:56 version 7.45.77.h8.4 FWID 01-ee8a6268

Hi @psyc, have you read through this thread?

More specifically have you verified wifi powersave is off?

While the error output is different, the timing is suspect.

Hope this helps!

error -2 or (err=-2) means you are missing files. Two specific ones: brcmfmac43430-sdio.radxa,zero.txt and brcmfmac43430-sdio.clm_blob.

Not sure if adding those files will fix your wifi problem, but that’s the first thing I would try.

The files aren’t there…where would I get them?

rock@radxa-zero:/lib/firmware/brcm$ ls -l
total 1684
-rw-r–r-- 1 root root 33376 Nov 20 2021 BCM43430A1.hcd
-rw-r–r-- 1 root root 63894 Jun 1 00:15 BCM4345C0.hcd
-rw-r–r-- 1 root root 45667 Nov 20 2021 BCM4345C5.hcd
-rw-r–r-- 1 root root 416477 Oct 9 2021 brcmfmac43430-sdio.bin
-rw-r–r-- 1 root root 902 Oct 9 2021 brcmfmac43430-sdio.txt
-rw-r–r-- 1 root root 533402 Jun 1 02:33 brcmfmac43455-sdio.bin
-rw-r–r-- 1 root root 1970 Jun 1 02:32 brcmfmac43455-sdio.radxa,zero.txt
-rw-r–r-- 1 root root 1970 Jun 1 02:32 brcmfmac43455-sdio.radxa,zero2.txt
-rw-r–r-- 1 root root 1970 Jun 1 02:32 brcmfmac43455-sdio.txt
-rw-r–r-- 1 root root 585884 Sep 28 2021 brcmfmac43456-sdio.bin
-rw-r–r-- 1 root root 2099 Sep 28 2021 brcmfmac43456-sdio.radxa,zero.txt
-rw-r–r-- 1 root root 2099 Sep 28 2021 brcmfmac43456-sdio.radxa,zero2.txt
-rw-r–r-- 1 root root 2099 Sep 28 2021 brcmfmac43456-sdio.txt

I also turned off powersave last night, I’ll see how that goes.

I don’t have the 1GB model, nor do I have that specific year firmware 2016, but I do have what I believe should work on my github. You are more than welcome to test it: git clone -b radxa https://github.com/pyavitz/firmware.git

Make sure to backup the current firmware you have in place before over writing it. sudo cp -r /lib/firmware/brcm /lib/firmware/brcm.orig

So interestingly enough, turning off wifi powersave seems to have solved the issue. The error is still there, but slightly different after adding the file it was looking for.

dmesg | grep brcmfmac
[ 8.390839] brcmfmac: F1 signature read @0x18000000=0x1541a9a6
[ 8.397722] brcmfmac: brcmf_of_probe: interrupt could not be mapped
[ 8.408380] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.423731] usbcore: registered new interface driver brcmfmac
[ 8.779502] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1
[ 8.790885] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[ 8.817190] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Mar 30 2016 11:30:56 version 7.45.77.h8.4 FWID 01-ee8a6268

From what I recall the clm_blob is supposed to be inside the bin file, so that it strange.