Like the Librem 11‘s integrated AX201, the device firmware is provided by the PureBoot Firmware Blob Jail.
We made this decision with care and to promote customer control over their own devices.
The Atheros AR9xxx cards survived for so long because it was the only viable card that did not require the installed operating system to provide its firmware. The OS does not need to know whether the card has firmware at all.
But take a close look at the phrasing there – “provide its firmware”. It’s not realistic to think that this card does not have firmware. These cards contain a Tensilica Xtensa CPU core, which executes a program. The card stores this program itself, but it is not fundamentally different from sending the same program to the card when the driver loads.
Unfortunately, there are no viable Wi-Fi cards today with free and open source firmware, which would be the perfect solution. In the absence of that option, we keep moving the needle. If the only way to offer Wi-Fi is with proprietary device firmware, let’s put it out in the open where you can control it.
With firmware stored in the card, there is no control. There’s little visibility into what firmware is there, we can’t tell if it’s the same firmware everyone else has, and we can’t easily switch between it and any alternative if one should become available.
Loading the firmware via the driver offers that control. We can verify that an individual’s firmware hasn’t been altered. We can choose to reject newer firmware if we want to. Switching is easy, just move a few files and reset the card. On Librem devices with hardware kill switches, this doesn’t even require shutting off the device.
If you have a different card you prefer, or you don’t need Wi-Fi, both Librem 14 and Librem Mini v2 offer “No Wireless” as an option.
PureBoot’s Firmware Blob Jail feature provides device firmware for operating systems that do not include any non-free components, like PureOS. Using the Linux configurable firmware search path, it does not require a special kernel or any special operating system support. It works for both an installed OS and a live USB boot. PureBoot places the firmware files in /run/firmware (/run is a tmpfs mount), so it does not alter anything on disk.
Many other operating systems include device firmware already and do not need this support. Debian began including device firmware in Debian 12, “bookworm”. Fedora, Qubes, and many other distributions have included it for much longer.
Purism products give control to owners. PureOS is built from entirely free and open source software. We offer control over the few proprietary firmware components that remain. Moving device firmware hidden in chips to files that you can see is the next step in our journey.