[<prev] [next>] [day] [month] [year] [list]
Message-ID: <5417930.k8YVOmb3Wj@prancing-pony>
Date: Fri, 10 Mar 2023 17:31:39 +0100
From: Diederik de Haas <didi.debian@...ow.org>
To: linux-wireless@...r.kernel.org,
brcm80211-dev-list.pdl@...adcom.com,
SHA-cyfmac-dev-list@...ineon.com, netdev@...r.kernel.org
Cc: Diederik de Haas <didi.debian@...ow.org>, 1032367@...s.debian.org,
Marc <dkm+reportbug@...aplop.net>
Subject: Re: brcm/brcmfmac4356-pcie.bin failed with error -2
On Thursday, 9 March 2023 19:17:10 CET Diederik de Haas wrote:
> In https://bugs.debian.org/1032367 we have a user who reported that the
> brcm/brcmfmac4356-pcie.bin firmware file failed to load with a new firmware-
> brcm80211 package, while it succeeded with an old one.
>
> In
> https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
> / I found 2 commits that seem relevant:
> - 04f71fe564552c22dc7ece0d2b8afc11b33de392 where various cypress firmware
> and clm_blob files (including 4356) were added to the *cypress* directory.
> - 0f0aefd733f70beae4c0246edbd2c158d5ce974c which removed old brcm firmware
> files that have a newer cypress variant ... from the *brcm* directory.
>
> So in essence a bunch of firmware files were moved from 'brcm' dir to
> 'cypress'.
>
> I don't know how the firmware file loading mechanism works, but could it be
> that it (also) needs to look in the new (cypress) location for those files?
I am now reasonably certain that that is indeed the issue.
I asked the reporter of the issue to create symlinks and that 'fixed' it:
On Friday, 10 March 2023 13:07:22 CET dkm@...aplop.net wrote:
> March 10, 2023 10:57 AM, "Diederik de Haas" <didi.debian@...ow.org> wrote:
> > I'm 99% sure this would be a *workaround*, but let's verify anyway:
> > In the /lib/firmware directory, create a symlink from
> > brcm/brcmfmac4356-pcie.bin to cypress/cyfmac4356-pcie.bin
>
> As expected, it works with the symlink :)
AFAICT in drivers/net/wireless/broadcom/brcm80211/brcmfmac/ there is pcie.c
and firmware.[c|h] and it uses BRCMF_FW_DEFAULT_PATH (="brcm/") to construct
the location of the firmware files.
Now that several firmware files are stored in a different directory ('cypress')
and also have a different file 'prefix' ('cyfmac') the firmware files that are
stored in/moved to the cypress directory are no longer found.
Cheers,
Diederik
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists