PINE64
Found newer firmware for broadcom wifi (brcmfmac43456-sdio) - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=111)
+--- Forum: Linux on Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=114)
+--- Thread: Found newer firmware for broadcom wifi (brcmfmac43456-sdio) (/showthread.php?tid=16456)



Found newer firmware for broadcom wifi (brcmfmac43456-sdio) - cobratbq - 04-08-2022

Hi, for the sake of documentation and knowledge sharing: I found newer firmware that seems to be for the Broadcom WIFI adapter in the Pinebook Pro. Here are some details. I cannot say anything regarding authenticity or how well it works, just that it is working on my machine for the last few hours. I stumbled upon it in a search, happened to show up in a Raspberry Pi forum-post. (Apparently the Raspberry Pi 400 uses the same hardware revision.)

Firmware-info during firmware loading:
- BCM4345/9 (i.e. hardware revision 9)
- Nov 16 2020 16:27:10 version 7.45.96 (r745790) FWID 01-99758c86

Post: https://forums.raspberrypi.com/viewtopic.php?f=117&t=291688

These two files are not all that is necessary for a full set. The other files, such as the ".txt" instruction file used in firmware loading, I borrowed from the original firmware fileset. I discovered recently that you need the ".clm_blob" file for wide frequency bands for high-speed connections.

Note: in my experience, the original firmware is known to crash. Additionally, kernel modules before version 5.12.y cannot handle hardware resets. Kernel modules from 5.12.y onwards can handle hardware resets, but there seems to be a bug where an early error after reset causes a kernel module crash. I try to keep track of what I use in https://github.com/cobratbq/pinebook-pro


RE: Found newer firmware for broadcom wifi (brcmfmac43456-sdio) - jpalus - 04-10-2022

Note that there are firmware files at https://github.com/RPi-Distro/firmware-nonfree/tree/bullseye/debian/config/brcm80211/brcm which identify as: 
Code:
May 14 2020 17:26:08 version 7.84.17.1 (r871554) FWID 01-3d9e1d87

Version number is higher, revision is higher, date is earlier.


RE: Found newer firmware for broadcom wifi (brcmfmac43456-sdio) - cobratbq - 04-12-2022

(04-10-2022, 04:10 PM)jpalus Wrote: Note that there are firmware files at https://github.com/RPi-Distro/firmware-nonfree/tree/bullseye/debian/config/brcm80211/brcm which identify as: 
Code:
May 14 2020 17:26:08 version 7.84.17.1 (r871554) FWID 01-3d9e1d87

Version number is higher, revision is higher, date is earlier.

You are right to notice. The next day I spent more time searching for firmware. The confusing part, for me, is the following. See the next two version dumps. (Also in README on github.)

Code:
43455c5-roml/43455_sdio-pno-aoe-pktfilter-sr-pktctx-lpc-pwropt-txbf-wl11u-txpwr-wepso-linkstat-pwrstats-ndoe-tdls-mfp-ve-extsae-43455_ftrs-noclminc-ob
    Version: 7.45.96 (r745790)
    CRC: 301bcfe7
    Date: Mon 2020-11-16 16:27:54 CST
    Ucode Ver: 1043.20724
    FWID: 01-99758c86
and
Code:
43455c5-roml/43455_sdio-pno-aoe-pktfilter-pktctx-lpc-pwropt-43455_ftrs-mfp-noclminc-clm_min
    Version: 7.84.17.1 (r871554)
    CRC: 72494685
    Date: Thu 2020-05-14 17:41:11 KST
    Ucode Ver: 1043.20424
    FWID: 01-3d9e1d87

The revision is indeed larger for the earlier binary. I found this one as a patch proposal for merging in linux-firmware.git. However, the "Ucode Ver" (microcode-version, I would think) is significantly lower. So does this mean that the firmware is newer but the cpu microcode is lower? Also, given the top string, the firmware is compiled with certain features disabled? (I'm guessing. I'm not an expert.) Can you clarify these difference and/or recommend?