The Purism team is continuously working on improving the hardware and software support for the Librem 5. These innovations contribute directly to the mainline, upstream kernel so that the hardware can be supported as part of the development community in the future.
Following up on our report for Linux 5.13 this summarizes the progress on mainline support for the Librem 5 phone and its development kit during the 5.14 and 5.15 development cycles. This summary is only about code flowing upstream.
The i.MX8MQ SoC includes hardware for connecting camera sensors and the kernel now supports using it. That includes our Librem 5 and its Devkit. The code should also be useful to a wide community outside the Librem 5. Next, we plan to add the Librem 5 camera driver to mainline as well. Specifically: We added MIPI CSI2 receiver and controller driver to Linux.
SD card readers in mainline Linux haven’t used proper runtime power management. Instead, distributions typically poll the device for changes regularly. Now users can enable full runtime suspend for SD card readers and expect it to work like any other device. This helps the Librem 5 save power but also benefits other devices that have SD card readers.
Since the Librem 5 includes an M.2 wifi card that is connected via sdio we added support for an alternative to the currently supported default:
The Librem 5 is getting better at predicting and managing it’s battery. Specifically the fuel gauge driver has seen some minor updates and cleanups:
To future-proof the Librem 5’s audio system, we changed our audio card name to help with it’s inclusion in the alsa project – something that is already done for the Devkit:
As the kernel API changes, we occasionally need to fix drivers we use in case they were forgotten by a previous change. This time around, we updated our USB-C controller driver to match the new kernel API.
During this round we contributed 4 Reviewed-by: or Tested-by: tag to patches by other authors. Again we would like to thank everybody who reviewed our patches and helped us supporting the hardware in mainline Linux – especially Laurent for the help with the camera stack.
Have a look at our Linux tree to see what is currently being worked on and tested (or help if you feel like joining the fun).