Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: RPI02W wifi driver?

dtyson%anduin.org.uk@localhost (Dave Tyson) writes:

>it seems that the wifi stuff has been pushed out into a bcm283x-rpi-
>wifi-bt.dtsi file which isn't in the current source tree unless its
>been added in the last month. I haven't looked at this area and am not
>sure if new dts files added to the
>directory get automagically built into dtb files by build.sh

The FDT is used to handle attachment of the SDIO controller.

[     1.075015] sdmmc0 at bcmsdhost0
[     1.205031] sdmmc0: direct I/O error 5, r=6 p=0xa5307f14 write
[     1.245037] sdmmc0: SD card status: 4-bit, C10, A1

-> this is the "sdhost" controller used for the SD card.

[     1.075015] sdhc0: SDHC 3.0, rev 153, caps <01610000/00000000>,
platform DMA, 200000 kHz, HS 3.3V, re-tuning mode 1, 1024 byte blocks
[     1.085016] sdmmc1 at sdhc0 slot 0
[     1.335047] sdmmc1: 4-bit width, 50.000 MHz

-> this is the "sdhc" controller used for SDIO.

The bwfm driver attaches to a specific vendor/product id that the
bwfm hardware presents to the SDIO controller. Just like a PCI or
USB device would be identified by such ids.

This here tells, that the hardware was identified at the "sdhc"
controller (sdmmc1):

[     1.345929] bwfm0 at sdmmc1 function 1
[     1.355055] (manufacturer 0x2d0, product 0xa9a6) at sdmmc1 function 2 not configured


Function 2 not attaching is just an artefact, the driver only attaches
at function 1.

The product number however is misleading, there are many similar
chips that identify as SDMMC_PRODUCT_BROADCOM_BCM43430. That's why
the driver uses more information to find the correct firmware files.

[     5.047909] bwfm0: Firmware file default:    brcmfmac43430-sdio.bin
[     5.047909] bwfm0: Firmware file model-spec: brcmfmac43430-sdio.raspberrypi,model-zero-2-w.bin
[     5.085806] bwfm0: Found Firmware file: brcmfmac43430-sdio.bin
[    10.616568] bwfm0: HT avail timeout
[    10.616568] bwfm0: autoconfiguration error: could not access clock

The error could be the result of loading the wrong firmware, but
it could also be the result of the chip being slightly incompatible.
I have no access to a RPI zero 2w to test this.

Linux provides even two different firmware files for rpi zero 2w (for
two revisions of that chip):

lrwxrwxrwx 1 root root 22 31. Okt 2022  brcmfmac43436-sdio.raspberrypi,model-zero-2-w.bin -> brcmfmac43436-sdio.bin
-rw-r--r-- 1 root root 416101 31. Okt 2022  brcmfmac43436-sdio.bin
lrwxrwxrwx 1 root root 23 31. Okt 2022  brcmfmac43436s-sdio.raspberrypi,model-zero-2-w.bin -> brcmfmac43436s-sdio.bin
-rw-r--r-- 1 root root 436733 31. Okt 2022  brcmfmac43436s-sdio.bin

So one suggestion is to try one of these firmware files and store
them under


so that the driver will find it. You may also need to copy the associated
files with suffixes .txt and .clm_blob accordingly.

If you can boot Linux, it will tell you (in dmesg) what file it is using,
like this:

[    8.450230] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43436-sdio for chip BCM43430/2


Home | Main Index | Thread Index | Old Index