Alternative WiFi for Librem 16?

I really really curious for how many FOSS BLOBs come included on Librem 16 to work properly as Purism recently accepted Propietary Firmware via Hack on Pure OS which makes me doubtful.

Thank you.

3 Likes

When Purism Stopped to ship Libre Atheros WLAN card on Librem 14, Nova Custom started to ship by owner request Libre Atheros WLAN card. So this is ridiculous and shame for Purism for.

However there is a new Fancy Freescale Libre WLAN/WPAN coming up to market, let see if Purism catch up and go back for Libre FSF Hardware.
:crossed_fingers:

4 Likes

What is the manufacturer and model name?

1 Like

Fully Compatible with Librem 5 and Librem 14 specs moreover the driver it is gnu gpl v2.0 with firmware embedded isolated compatible with Gnu Rules.

Purism :heart:

Libre Software

6 Likes

That card appears to require the OS to provide firmware. The only firmware available is proprietary. Do you have any information to suggest this card would be RYF compliant?

I went down the rabbit hole on both the IW611 chipset used in this card and the NX611 card itself.


IW611 chipset: Pretty straightforward, requires proprietary firmware.

I believe this is the firmware: imx-firmware/nxp/FwImage_IW612_SD at lf-6.6.3_1.0.0 · nxp-imx/imx-firmware · GitHub

(While the directory is called “IW612”, the firmware files are called “61x”, suggesting they are the same for the 611 and 612.)

I did not read the license in detail but there are some obvious nonfree limitations from a quick skim: imx-firmware/LICENSE.txt at lf-6.6.3_1.0.0 · nxp-imx/imx-firmware · GitHub

The Linux driver is also out-of-tree: GitHub - nxp-imx/mwifiex: WiFi extensions

(The driver is indeed GPLv2 though.)

This all originated from a documented linked by NXP tech support (registration required): Solved: Re: IW611 Wireless Linux Driver - NXP Community


NX611 module: Okay, the IW611 is no better but maybe the folks at Ezurio/Sona hacked the firmware into a ROM on the card? No, it doesn’t appear that way. There’s an odd mention of an MIT license, but there’s no actual firmware source available today and nothing concretely indicating it ever will be available.

Sona’s app note says that to use the card with a Yocto-based system, you need the nx61x-firmware and firmare-imx-sdma-imx7d packages from the meta-summit-radio layer. (registration required: Application Note - Sona NX611 Evaluation Package Yocto Integration (Preliminary) | Laird Connectivity is Now Ezurio)

The build scripts would pull from https://github.com/LairdCP/SonaNX-Release-Packages/releases/, but that repo is private (assuming it exists). Maybe because the card isn’t released yet. (meta-summit-radio/meta-summit-radio/recipes-bsp/radio-firmware/nx61x-firmware.bb at lrd-11.171.0.x · LairdCP/meta-summit-radio · GitHub)

It does have an apparent reference to an MIT license file in that build script, but without being able to see the content I am hesitant to state that any source is actually available or what that license might apply to.

Looking at a comparable repo: Releases · LairdCP/Sterling-LWB-and-LWB5-Release-Packages · GitHub - it’s one of these repos where there’s no actual source code, they’re just using Github Releases to post proprietary binary artifacts.

The only thing to note is the possible reference to the MIT license. However I think it is unlikely that there is actually source available given that NXP does not release it themselves - it could be a placeholder as the repos are still private, and comparable repos for other cards do not actually have any source. I would love to be wrong but there is nothing concrete to suggest the firmware would actually be open source. The card clearly requires the OS to provide firmware.

8 Likes

@carlosgonz, do you have a citation for your claim of the Sona NX611’s embedded firmware being compliant with the RYF exception?

2 Likes

I asked to Ezurio to Confim before i wrote the first post, theys also sent me pdf data sheets and theys told me that BLOBs will run in a dedicated cpu to improve performace and acceleration of controller.

1 Like

This is how the other cards work too (e.g. the Intel ax200). The firmware blob runs on a CPU in the Wi-Fi card itself, not on the x86 host. This does not mean the card is RYF compliant or that it does not require the x86 host to provide that firmware.

The difference between the old ath9k cards and all modern cards is where the card gets that firmware blob.

Those ath9k cards stored it in a ROM on the card, and the card CPU executed it from there. The x86 host doesn’t have to know about it, but it is there.

Modern cards only have a minimal bootstrap ROM on the card. The firmware blob is loaded into the card’s RAM by the x86 host via the bootstrap ROM. There are practical benefits to this (which I’d be happy to discuss, but off topic for this thread). This is what RYF doesn’t like as we all know - the x86 host has to provide the blob, even though the x86 host never executes it.

3 Likes

Ezurio told me that NX611 has a dedicated ROM and Data Sheets also show a ROM i not remember the size of ROM.

Thanks Jonathon Hall for the Interest, that is a Sign of Hopes.

Because it is the quick way to run Gnu System 100% Libre of BLOBs.

1 Like

As Jonathon says though, that is pretty much a pre-requisite for any peripheral where the central CPU supplies the firmware for the peripheral: there has to be a mechanism for transferring firmware over the interface (whether USB or PCIe or something else) from the central CPU to the peripheral - hence that means that the peripheral has to be able to boot itself enough to make that transfer - hence the peripheral still needs some kind of non-volatile program storage.

3 Likes