Pi 4 mod. B / BCM4345/6 / not set regulatory country code

Open
#6,669 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Quiet
Tech stack
c, linux

Research direction

Start with the brcmfmac regulatory-country messages and compare the listed files in /usr/lib/firmware/cypress/ with the newer firmware from Infineon. Confirm which firmware is packaged for the Raspberry Pi 4 BCM4345/6 device, then verify that the country setting is accepted and the channel-setting errors no longer appear in dmesg.

Written by the indexing model from the issue text.

Description

Describe the bug
$ raspinfo
System Information
------------------

Raspberry Pi 4 Model B Rev 1.5
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"

Raspberry Pi reference 2024-11-19
Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 891df1e21ed2b6099a2e6a13e26c91dea44b34d4, stage4

Linux raspberrypi 6.6.74+rpt-rpi-v8 raspberrypi/bookworm-feedback#1 SMP PREEMPT Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64 GNU/Linux
Revision	: d03115
Serial		:
Model		: Raspberry Pi 4 Model B Rev 1.5
Throttled flag  : throttled=0x0
Camera          : supported=0 detected=0, libcamera interfaces=0



$ dmesg
...
[    0.076283] raspberrypi-firmware soc:firmware: Attached to firmware from 2024-11-26T12:52:28, variant start
[    0.080287] raspberrypi-firmware soc:firmware: Firmware hash is 2ae30f53898ae2f1ba77ff570a92991bedfb0398
...
[   18.738682] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Aug 29 2023 01:47:08 version 7.45.265 (28bca26 CY) FWID 01-b677b91b
[   18.748360] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting
...
[   46.086090] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting
...
[ 1898.255613] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting
[ 1902.355723] brcmfmac: brcmf_set_channel: set chanspec 0x100c fail, reason -52
[ 1902.356167] brcmfmac: brcmf_set_channel: set chanspec 0x100d fail, reason -52
[ 1902.356576] brcmfmac: brcmf_set_channel: set chanspec 0xd022 fail, reason -52
[ 1902.467742] brcmfmac: brcmf_set_channel: set chanspec 0xd026 fail, reason -52
[ 1902.575619] brcmfmac: brcmf_set_channel: set chanspec 0xd02a fail, reason -52
...
[ 1954.246037] ieee80211 phy0: brcmf_cfg80211_reg_notifier: Firmware rejected country setting
...
Details to fix this yourself
  1. From the repository https://github.com/Infineon/ifx-linux-firmware downloaded the new firmware:
  1. Replaced the files in the directory /usr/lib/firmware/cypress/:
  • cyfmac43455-sdio.clm_blob
  • cyfmac43455-sdio-standard.bin
$ dmesg
...
[   12.948059] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Oct 28 2024 23:27:00 version 7.45.286 (be70ab3 CY) FWID 01-95efe7fa
...
Dominant language
C
Stars
13.2k
Forks
5.5k
Avg merge
2d 21h
Merged PRs (30d)
21

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/linux

All issues in raspberrypi/linux

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.