Bug #245
openAdd missing Broadcom firmwares (Solidrun Hummingboard IIOT)
100%
Description
Adding these firmwares will fix these issues:
May 31 02:00:01 localhost kernel: cfg80211: Loading compiled-in X.509 certificates for regulatory database
May 31 02:00:01 localhost kernel: cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
Aug 20 08:30:24 localhost kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
Aug 20 08:30:24 localhost kernel: brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.bin failed with error -2
Aug 20 08:30:24 localhost kernel: brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.bin
Aug 20 08:31:20 localhost.localdomain kernel: cfg80211: failed to load regulatory.db
Aug 20 08:31:26 localhost.localdomain kernel: brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.txt failed with error -2
Aug 20 08:31:26 localhost.localdomain kernel: brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.txt
Aug 20 08:32:27 localhost.localdomain kernel: brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
Aug 20 08:32:27 localhost.localdomain kernel: brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Mar 3 2019 19:47:25 version 7.45.184 (r712131 CY) FWID 01-b363c0a0
Aug 20 08:32:27 localhost.localdomain NetworkManager[615]: <info> [1755671547.8610] rfkill0: found Wi-Fi radio killswitch (at /sys/devices/platform/soc@0/30800000.bus/30b40000.mmc/mmc_host/mmc0/mmc0:0001/mmc0:0001:1/ieee80211/phy0/rfkill0) (driver brcmfmac)
Updated by Valentin Geffroy 12 days ago ยท Edited
- % Done changed from 0 to 30
For Hummingboard IIOT based on BSP/kernel 5.15 it might use: https://github.com/SolidRun/meta-solidrun-arm-imx8/blob/kirkstone-imx8m/recipes-kernel/linux-firmware/linux-firmware_%25.bbappend
Next step is to package these firmwares + test on the board
Updated by Valentin Geffroy 11 days ago
- % Done changed from 30 to 80
- before on redpesk package by default (
solidrun-firmware-1.1.0-3.redpesk.bsp.hummingboard.iiot_95a64572.rpbatz.aarch64
) :
[root@d0-63-b4-05-d1-23 ~]# dmesg |grep brcm
[ 8.125721] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 8.135484] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.bin failed with error -2
[ 8.149022] brcmfmac mmc0:0001:1: Falling back to sysfs fallback for: brcm/brcmfmac43455-sdio.fsl,imx8mp-sr-som.bin
- what I have now (
solidrun-firmware-2.0.0-1.firmwares.brcm_bb32e33e.rpbatz.aarch64
) :
[root@d0-63-b4-05-d1-23 ~]# dmesg |grep brcm
[ 7.491295] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 7.836202] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6
[ 7.865160] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Mar 3 2019 19:47:25 version 7.45.184 (r712131 CY) FWID 01-b363c0a0
I have to look to regulatory.db
and integrate everything in the R-Cube project
All firmwares come from Yocto SolidRun kirkstone imx8M sources (kernel 5.15) that we must update for kernel 6.6 BSP Scarthgap
https://github.com/SolidRun/meta-solidrun-arm-imx8/blob/kirkstone-imx8m/recipes-kernel/linux-firmware/linux-firmware\_%25.bbappend
Updated by Valentin Geffroy 11 days ago
- Status changed from In Progress to Submitter feedback needed
Updated by Valentin Geffroy 11 days ago
For the following error, I don't know how to manage that because the package which gives the db and its signature is here...
[root@d0-63-b4-05-d1-23 ~]# dmesg |grep regulatory
[ 2.884643] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 2.927528] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 2.941858] platform regulatory.0: Falling back to sysfs fallback for: regulatory.db
[ 64.485981] cfg80211: failed to load regulatory.db
However the package is installed:
[root@d0-63-b4-05-d1-23 ~]# dnf provides /usr/lib/firmware/regulatory.db
Last metadata expiration check: 1:04:44 ago on Thu 25 Sep 2025 05:44:56 PM CEST.
wireless-regdb-2020.11.20-6.apps.rpbatz.noarch : Regulatory database for 802.11 wireless networking
Repo : @System
Matched from:
Filename : /usr/lib/firmware/regulatory.db
wireless-regdb-2020.11.20-6.apps.rpbatz.noarch : Regulatory database for 802.11 wireless networking
Repo : redpesk-lts-batz-2.0-update-build
Matched from:
Filename : /usr/lib/firmware/regulatory.db
wireless-regdb-2020.11.20-6.apps.rpbatz.noarch : Regulatory database for 802.11 wireless networking
Repo : redpesk-baseos-update
Matched from:
Filename : /usr/lib/firmware/regulatory.db
[root@d0-63-b4-05-d1-23 ~]# rpm -qi wireless-regdb
Name : wireless-regdb
Version : 2020.11.20
Release : 6.apps.rpbatz
Architecture: noarch
Install Date: Tue 16 Sep 2025 03:47:31 PM CEST
Group : Unspecified
Size : 10703
License : ISC
Signature : RSA/SHA256, Thu 16 May 2024 11:24:58 AM CEST, Key ID 6848354c19c080cf
Source RPM : wireless-regdb-2020.11.20-6.apps.rpbatz.src.rpm
Build Date : Thu 16 May 2024 11:24:58 AM CEST
Build Host : builder-13.redpesk.onprem
Packager : IoT.BZH
Vendor : IoT.BZH
URL : https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb
Summary : Regulatory database for 802.11 wireless networking
Description :
The wireless-regdb package provides the regulatory rules database
used by the kernels 802.11 networking stack in order to comply
with radio frequency regulatory rules around the world.
I studied the driver code, here is the error: https://github.com/nxp-imx/linux-imx/blob/lf-5.15.y/net/wireless/reg.c#L1045
So we have not firmware loaded but it exists on the target in both paths:
[root@d0-63-b4-05-d1-23 ~]# ls -l /lib/firmware/ |grep regu
-rw-r--r-- 1 root root 3940 May 16 2024 regulatory.db
-rw-r--r-- 1 root root 1182 May 16 2024 regulatory.db.p7s
[root@d0-63-b4-05-d1-23 ~]# ls -l /usr/lib/firmware/ |grep regu
-rw-r--r-- 1 root root 3940 May 16 2024 regulatory.db
-rw-r--r-- 1 root root 1182 May 16 2024 regulatory.db.p7s
So probably it's dealing with the x.509 certificate but disabling the configuration hasn't impact (same issue):
# disable CFG80211 database verification (not needed)
CONFIG_EXPERT=y
CONFIG_CFG80211_CERTIFICATION_ONUS=y
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=n
CONFIG_CFG80211_USE_KERNEL_REGDB_KEY=n
Another try I made is to take the latest wireless-regdb
here: https://git.kernel.org/pub/scm/linux/kernel/git/wens/wireless-regdb.git/tree/
But the issue is still present. Since this is not a blocking issue for WiFi operational features, maybe we'll fix that with 6.6 Kernel / redpesk corn 3.0!