Bug#1023863: firmware: failed to load brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)

2023-02-08 Thread Alexander Dalm
Hi Diederik,

changes were made to the Kernel so now each of the files is requested
board-specifc first, in your case:
   brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin
   brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
   brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.clm_blob
and if not existent, falling back to the regular ones:
   brcm/brcmfmac43455-sdio.bin (symbolic link to
cypress/cyfmac43455-sdio.bin)
   brcm/brcmfmac43455-sdio.txt (not existing -> different topic)
   brcm/brcmfmac43455-sdio.clm_blob (symbolic link to
cypress/cyfmac43455-sdio.clm_blob

currently only the board-specific .txt files (NVRAM settings) are available
in the bullseye / bullseye-backports packages, see:
https://packages.debian.org/bullseye/all/firmware-brcm80211/filelist

based on the popularity of the Raspberry Pi models, the missing symbolic
links might be added sooner or later.
for the time being you can add them manually:
   cd  /lib/firmware/brcm/
   sudo ln -s ../cypress/cyfmac43455-sdio.bin
brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin
   sudo ln -s ../cypress/cyfmac43455-sdio.clm_blob
brcmfmac43455-sdio.raspberrypi,3-model-b-plus.clm_blob
(both files, even if your Kernel 6.0.0-3 only requests per-board .bin files)

With the recent Kernel version firmware_request_nowarn() is used for the
board-specifc files, so those errors shouldn't be logged.
-> I will do some testing with fallback files to verify this.

In my case it's a bit more complicated involving a bug with space
characters in the debian-installer and a nonexistent clm_blob file for
brcmfmac43340, see #1030519

commits in the Kernel:
   per-board bin files ( 2021-08-01 13:26:59 +0300):

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/net/wireless/broadcom/brcm80211/brcmfmac?h=v6.1.9&id=5ff013914c62c493c206d70554cfb1d311ea481a

   per-board clm_blob files ( 2022-09-19 12:59:33 +0300):

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/net/wireless/broadcom/brcm80211/brcmfmac?h=v6.1.9&id=e263d722941148add195371998ae0f94d79f28af

   multipe board types + firmware_request_nowarn() (2022-09-19 12:59:33
+0300):

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/net/wireless/broadcom/brcm80211/brcmfmac?h=v6.1.9&id=7cb46e7214179db6d8de21c1b395a9d42efa735e


Bug#1023863: firmware: failed to load brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)

2022-11-11 Thread Diederik de Haas
Package: firmware-brcm80211
Version: 20221012-1
Severity: normal
X-Debbugs-Cc: pkg-raspi-maintain...@lists.alioth.debian.org

With a freshly made RPi 3 Bookworm image (with [1]) I booted up my
RPi 3B+ and noticed the following error in `dmesg`:

[   19.801109] brcmfmac mmc1:0001:1: firmware: failed to load 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)
[   19.815101] firmware_class: See https://wiki.debian.org/Firmware for 
information about missing firmware
[   19.829633] brcmfmac mmc1:0001:1: firmware: failed to load 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)

All messages wrt 'brcmfmac' in `dmesg`:
[   19.773206] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio 
for chip BCM4345/6
[   19.786577] usbcore: registered new interface driver brcmfmac
[   19.801109] brcmfmac mmc1:0001:1: firmware: failed to load 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)
[   19.829633] brcmfmac mmc1:0001:1: firmware: failed to load 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin (-2)
[   19.843649] brcmfmac mmc1:0001:1: Direct firmware load for 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.bin failed with error -2
[   19.950059] brcmfmac mmc1:0001:1: firmware: direct-loading firmware 
brcm/brcmfmac43455-sdio.bin
[   19.985340] brcmfmac mmc1:0001:1: firmware: direct-loading firmware 
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt
[   20.206331] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio 
for chip BCM4345/6
[   20.249761] brcmfmac mmc1:0001:1: firmware: direct-loading firmware 
brcm/brcmfmac43455-sdio.clm_blob
[   20.266765] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Apr 15 
2021 03:03:20 version 7.45.234 (4ca95bb CY) FWID 01-996384e2

https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/brcm
does not seem to have a file with that name though, but I've seen in
other places where a symlink was made.
Not sure if that's what missing here though.
If the kernel incorrectly reports this issue, please reassign.

The (cabled) network *does* work though, but as dmesg classified it
as an error, I've set the severity to normal.

Cheers,
  Diederik

[1] https://salsa.debian.org/raspi-team/image-specs/

-- System Information:
Debian Release: bookworm/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: arm64 (aarch64)

Kernel: Linux 6.0.0-3-arm64 (SMP w/4 CPU threads)
Kernel taint flags: TAINT_CRAP
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

firmware-brcm80211 depends on no packages.

firmware-brcm80211 recommends no packages.

Versions of packages firmware-brcm80211 suggests:
ii  initramfs-tools  0.142

-- no debconf information