Status of Librem 13 drivers?

I’ve been following the coreboot updates with interest, but what is the status of the drivers/firmware for currently shipping Librem 13 machines?

Last I looked there was no open driver for Bluetooth functionality. Is that still the case? If so, what is the progress being made on this?

Do the Bluetooth/Wireless chips require non-free (closed source) firmware?

Is there now a proper kernel mainlined multi-touch driver for the trackpad?

Any there any other closed source bits required for the hardware to operate properly?

It’s done.

Yes.

Currently stalled, as we focused on coreboot. But we’re still hiring: https://puri.sm/jobs/

Bluetooth yes, wireless no.

For L13v2/L15v3 with Elantech trackpads—yes.

Other than bluetooth support—no, everything works with libre linux kernel 100%.

Thanks for the thorough reply.

Bluetooth seems to be a pain point for libre solutions. Has Purism published any details of the Bluetooth hardware in the Librem machines (are they all the same?). What is the exact model of the chip(s) used?

1 Like

Bluetooth would be from the wireless card. I have 15v2 model and the kernel identifies it like this:

Atheros AR9462 Rev:3

1 Like

More exactly the Bluetooth is an AR3012 conected to USB but it is built into the WiFi module along the AR9462.
The AR3012 is a BT4.0 incl. low energy (aka “smart”) capable chip, based on a 32-bit CPU core by Tensilica which is again a MIPS derivate (AFAIK).

There is only little information available on the AR3012 and what this “firmware” is actually doing. There is a brief product flyer available e.g. here:

The binary firmware is available in the linux-firmware GIT:
AthrBT_0x11020100.dfu
ramps_0x11020100_40.dfu
which can be found here:
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/ar3k

The Tensilica CPU cores are supported by the Gnu tools (GCC, binutils, gdb), maybe a round of disassembling might come up with something useful? Since the total binary code is ~50kb I doubt that this is the complete baseband. Using “strings” on the binaries already gives some insights.

Cheers
nicole

3 Likes