Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Re: Trying to understand firmware for bwfm driver
Are you using this? https://pkgsrc.se/sysutils/bcmfw
Sent from Proton Mail Android
-------- Original Message --------
On 6/11/24 12:57 PM, <mlelstv%serpens.de@localhost> wrote:
> joelp%sdf.org@localhost (Joel) writes:
>
> >[ 7.050526] kern.module.path=/stand/evbarm/10.0/modules
> >[ 7.050526] bwfm0: Firmware file default: brcmfmac43455-sdio.bin
> >[ 7.050526] bwfm0: Firmware file model-spec: brcmfmac43455-sdio.pine64,pinebook-pro.bin
> >[ 7.060526] bwfm0: Found Firmware file: brcmfmac43455-sdio.bin
>
>
> >[ 7.080526] bwfm0: NVRAM file default: brcmfmac43455-sdio.txt
> >[ 7.080526] bwfm0: NVRAM file model-spec: brcmfmac43455-sdio.pine64,pinebook-pro.txt
> >[ 7.080526] bwfm0: autoconfiguration error: NVRAM file not available
>
>
> >[ 7.080526] bwfm0: CLM file default: brcmfmac43455-sdio.clm_blob
> >[ 7.080526] bwfm0: CLM file model-spec: brcmfmac43455-sdio.pine64,pinebook-pro.clm_blob
>
>
> Firmware selection works like this:
>
> You need 2 (.bin, .txt) or 3 files (.bin, .txt, .clm_blob).
>
> The wifi chip is identified as a 43455 and your system model
> identifies itself as pine64,pinebook-pro. The driver will therefore
> try to load
>
> brcmfmac{chip}-sdio.{model}.bin
> brcmfmac{chip}-sdio.{model}.txt
> brcmfmac{chip}-sdio.{model}.clm_blob
>
> and falls back to
>
> brcmfmac{chip}-sdio.bin
> brcmfmac{chip}-sdio.txt
> brcmfmac{chip}-sdio.clm_blob
>
> You always need the .bin (firmware) and .txt (board-specific parameter)
> files.
>
> Some .bin files also require the .clm_blob (Country Locale Matrix),
> others have the data already embedded. All of the release files should
> have the data embedded, but files from other sources may not, and then
> the interface will not work without the .clm_blob file.
>
> Most but not all chips that identify themselves as e.g. 43455 take the
> same firmware. So it's usually fine to use one brcmfmac43455-sdio.bin
> for each such chip. Some chips are different, then providing a model
> specific file can help.
>
> The parameter file (also called NVRAM file) is more specific, but
> to some degree they also all work. However, some might tune the chip
> to e.g. a specific antenna so that, with the wrong parameters, you may
> violate regulations or get receive errors.
>
>
> The driver uses two steps to identify a chip:
>
> 1. By vendor and product to decide if the driver attaches:
>
> Vendor 0x02d0 Product 0xa9bf is seen as 43455
>
> the Wifi chip in an RPI4 reports 0x02d0/0xa9a6, the chip is
> identified as a bcm43430, which is good enough to attach.
>
>
> 2. By id and revision to select the firmware:
>
> Id 0x4345 rev <= 8 is seen as 43455
> Id 0x4345 rev 9 is seen as 43456
> Id 0x4345 rev >= 10 is again seen as 43455
>
> the Wifi chip in the RPI4 here reports id 0x4345 rev 6, so the
> driver loads the firmware for a 43455, first it looks for rpi4
> specific files, then for generic files as described above.
>
>
> https://forum.pine64.org/showthread.php?tid=16456 says that at
> least some pinebooks come with a 43456 (id 0x4345 rev 9), but
> yours apparently doesn't since 0x4345/9 would be identified
> as 43456 by our driver.
>
>
>
Home |
Main Index |
Thread Index |
Old Index