7 Replies Latest reply on Mar 28, 2020 6:18 PM by ZhengbaoZ_96

    The wlan0 interface won't show BCM43438 with brcmfmac

    OfCo_4667926

      Hi,
      I recently purchased a "CanaKit Raspberry Pi 4 4GB Starter Kit - 4GB RAM" and my WiFi (wlan0 interface) won't show up.

      I'm using Raspbian GNU/Linux 10 (buster) with the following kernel:
      Linux raspberrypi 4.19.97-v7l+ #1294 SMP Thu Jan 30 13:21:14 GMT 2020 armv7l GNU/Linux

      I started with NOOBS and the Raspbian, then tried to move to a newer OS using the Raspberry Pi Imager, but there is no wlan0 interface showing in ifconfig:
      `pi@raspberrypi:~ $ ifconfig
      eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
      inet 10.100.102.10 netmask 255.255.255.0 broadcast 10.100.102.255
      inet6 fe80::9c73:5c79:caa4:1824 prefixlen 64 scopeid 0x20
      ether dc:a6:32:23:e1:97 txqueuelen 1000 (Ethernet)
      RX packets 234 bytes 29425 (28.7 KiB)
      RX errors 0 dropped 0 overruns 0 frame 0
      TX packets 181 bytes 29795 (29.0 KiB)
      TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

      lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
      inet 127.0.0.1 netmask 255.0.0.0
      inet6 ::1 prefixlen 128 scopeid 0x10
      loop txqueuelen 1000 (Local Loopback)
      RX packets 0 bytes 0 (0.0 B)
      RX errors 0 dropped 0 overruns 0 frame 0
      TX packets 0 bytes 0 (0.0 B)
      TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

      pi@raspberrypi:~ $`

      These are the messages from dmesg after plain reboot:
      pi@raspberrypi:~ $ dmesg | grep brcm
      [ 0.272456] brcm-pcie fd500000.pcie: dmabounce: initialised - 32768 kB, threshold 0x00000000c0000000
      [ 0.272478] brcm-pcie fd500000.pcie: could not get clock
      [ 0.272541] brcm-pcie fd500000.pcie: host bridge /scb/pcie@7d500000 ranges:
      [ 0.272579] brcm-pcie fd500000.pcie: MEM 0x600000000..0x603ffffff -> 0xf8000000
      [ 0.338740] brcm-pcie fd500000.pcie: link up, 5.0 Gbps x1 (!SSC)
      [ 0.339014] brcm-pcie fd500000.pcie: PCI host bridge to bus 0000:00
      [ 0.473239] brcmstb_thermal fd5d2200.thermal: registered AVS TMON of-sensor driver
      [ 3.829136] brcmfmac: F1 signature read @0x18000000=0x15264345
      [ 3.841332] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
      [ 3.841829] usbcore: registered new interface driver brcmfmac
      [ 4.094279] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
      [ 4.112275] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Mar 2 2020 23:30:41 version 7.45.202 (r724630 CY) FWID 01-72f6ece2
      [ 4.249668] brcmfmac: power management disabled
      pi@raspberrypi:~ $`

      Any idea?

      Thanks,
      Ofir

        • 1. Re: The wlan0 interface won't show BCM43438 with brcmfmac
          ZhengbaoZ_96

          Hello:

           

          Did you try to run "ifconfig wlan0 up" by manual?

          • 2. Re: The wlan0 interface won't show BCM43438 with brcmfmac
            OfCo_4667926

            Hi,

            The wlan0 interface isn't identified/shown anywhere as an adapter, even in `rfkill` or `ifconfig -a`.

             

            Thanks,

            Ofir

            • 3. Re: The wlan0 interface won't show BCM43438 with brcmfmac
              ZhengbaoZ_96

              I think you need to check below setting:

              1. if you copy all the brcmfmac43455-sdio related file into /lib/firmware/brcm/  like

                  brcmfmac43455-sdio.bin, brcmfmac43455-sdio.clm_blob, brcmfmac43455-sdio.txt

               

              2. check the hardware setting about the INT setting in your board for SDIO interface.

              3.  try to add debug levels in the bringup like below:

                  insmod brcmfmac.ko debug=0x120000e

              debug level is defined in debug.h

               

              4. I noticed you are using SDIO, but seems pcie also opened in the log,  you can disable it in the defconfig also.

              • 4. Re: The wlan0 interface won't show BCM43438 with brcmfmac
                OfCo_4667926

                Hello,

                Thanks for the reply.

                You asked to copy the firmware files, but where should I copy them from?

                Seems like I already have the files:

                pi@raspberrypi:~ $ ls /lib/firmware/brcm/brcmfmac43455-sdio*

                /lib/firmware/brcm/brcmfmac43455-sdio.bin       /lib/firmware/brcm/brcmfmac43455-sdio.txt

                /lib/firmware/brcm/brcmfmac43455-sdio.clm_blob

                pi@raspberrypi:~ $

                 

                Also, re "check the hardware setting about the INT setting in your board for SDIO interface."

                where and how do I do this stuff in Rapsbian?

                 

                Re kernel debug printing, I have unloaded the kernel module (brcmfmac driver) and reloaded it again, seems like it is an unidentified chip SKU or wrong read from the bus:

                pi@raspberrypi:~ $ sudo modprobe -r brcmfmac

                pi@raspberrypi:~ $ sudo modprobe brcmfmac debug=0x120000e

                pi@raspberrypi:~ $ dmesg | tail | grep brcmfmac

                [366015.227471] brcmfmac: F1 signature read @0x18000000=0xffffffff

                [366018.449109] brcmfmac: brcmf_chip_recognition found AXI chip: BCM65535/15

                [366018.449122] brcmfmac: brcmf_chip_recognition: chip backplane type 15 is not supported

                [366018.449135] brcmfmac: brcmf_sdio_probe_attach: brcmf_chip_attach failed!

                [366018.449151] brcmfmac: brcmf_sdio_probe: brcmf_sdio_probe_attach failed

                [366018.449161] brcmfmac: brcmf_sdio_remove Enter

                [366018.449172] brcmfmac: brcmf_detach Enter

                [366018.449254] brcmfmac: brcmf_sdio_remove Disconnected

                [366018.449433] brcmfmac: brcmf_ops_sdio_probe: F2 error, probe failed -19...

                [366018.449790] usbcore: registered new interface driver brcmfmac

                pi@raspberrypi:~ $

                 

                Please let me know if you need more information.

                 

                Thanks,

                Ofir

                • 5. Re: The wlan0 interface won't show BCM43438 with brcmfmac
                  ZhengbaoZ_96

                  Actually´╝î we can't provide NVRAM for Rapsbian, it should be released from the Rapsbian provider if they already have the matured solution.  Are you using 43438 now?  but I only see 43455 related in the directory you "ls" .  and we have official 43430 named firmware in the release, and clm file also included, you can downloaded it from here.

                  Cypress Linux WiFi Driver Release (FMAC) [2020-01-15]

                  1 of 1 people found this helpful
                  • 6. Re: The wlan0 interface won't show BCM43438 with brcmfmac
                    OfCo_4667926

                    Thanks for the reply.

                    Seems like I'm using the CYW43455 chipset (see also here).

                    I tried to do the following:

                    1) Unzipping the device driver link you sent above

                    2) Untarring the cypress-firmware-v4.14.77-2020_0115.tar.gz

                    3) Copying the extracted firmware into /lib/firmware/brcm: sudo cp firmware/*43455* /lib/firmware/brcm/

                    4) Unloading and reloading the driver: sudo modprobe -r brcmfmac; sudo modprobe brcmfmac

                     

                    Still get the same results.

                     

                    Is there anything else I'm missing?

                     

                    Thanks,

                    Ofir

                    • 7. Re: The wlan0 interface won't show BCM43438 with brcmfmac
                      ZhengbaoZ_96

                      Hello:

                           "I started with NOOBS and the Raspbian... "    I suggest you to start with an OS which can bring up the wifi card successfully, then copy all the related files in the directory lib/firmwre/...   I think that includes all the necessary and correct files if Raspberry had a matured solution.   Then if you want to introduce a newer OS, you can copy all the files into it .