Pengutronix' aktuelle Open-Source-Contributions - Linux 7.0 Edition

Linux 7.0 wurde frisch veröffentlicht. Wir nehmen das zum Anlass, zu schauen, was Pengutronix zu diesem Kernel-Release und zu anderen Open-Source-Projekten seit dem 6.19 Blogeintrag im Februar beigetragen hat.

Kernel

Der Linux Kernel ist nicht aufregend, und das mögen wir daran. 7.0 ist ein Release wie jedes andere, und Linus hat schlicht nicht genug Zehen um viel höher als 19 zu zählen.

Wir bei Pengutronix haben insgesamt 21 Patche zum neuen Release beigetragen, ohne die Merge-Commits unserer Maintainer mitzuzählen.

Michael Tretter und Stefan Kerkmann haben error handling in der allgemeinen GPIO-Bibliothek und dem BD71815 Power-Supply-Treiber vereinfacht. Marc Kleine-Budde und Michael Tretter haben die Nachverfolgung der Error-Counter des SJA1000-CAN-Controllers verbessert. Marco Felsch hat dem Fractional-N Frequenz-Synthesizer des i.MX93 SoCs weitere Frequenzen hinzugefügt, die für einige parallel-Display-Panel benötigt werden. Fabian Pflug hat dem Kernel Unterstützung für das FRDM i.MX 93 Entwicklungsboard hinzugefügt, auf Grundlage von Vorarbeiten des Herstellers NXP. Sascha Hauer, Michael Tretter, Steffen Trumtrar, Fabian Pflug und Oleksij Rempel haben Device-Tree-Bindings verbessert, zum Beispiel in den Bereichen System on Chip Alsa Audio (ASoC), analoge Video-Decoder, LED-Matritzen und Analog-Digital-Wandler.

Marc hat ein Problem im Teardown des i.MX LPSPI-Controller-Treibers (Low Power Serial Peripheral Interface) behoben, das zu NULL-Pointer-Dereferenzierung wegen Use-after-Free führte. Auf der CAN-Seite hat er ein Problem mit GS und candleLight kompatiblen CAN-Schnittstellen behoben, bei dem diese ihre Bitraten-Konfiguration nach dem Deaktivieren (und erneutem Reaktivieren) verloren hatten. Außerdem hat er Error-Handling wieder eingeführt, das beim Refactoring des CAN-Netlink-Supports verloren gegangen war.

Michael Grzeschik hat eine Regression im Bluetooth-Subsystem behoben, durch die das gleichzeitige Verbinden mehrerer Geräte unzuverlässig geworden war.

Oleksij hat eine ganze Reihe von Problemen im Treiber der LAN78xx-Familie von USB-Ethernet-Adaptern behoben:

OP-TEE

Seit meinem letzten Blogeintrag hat Pengutronix 14 Änderungen zu OP-TEE OS beigetragen. Dies festigt den Schutz von Anwendungen, die in der ARM TrustZone laufen.

Zehn der Änderungen waren Teil einer großen Serie unseres Kollegen Marco Felsch, die TZASC-Konfiguration auf i.MX-Prozessoren sicherer zu machen. Der TZASC ("TrustZone Address Space Controller") ist eine Komponente der ARM-Prozessoren, die sensible Regionen des Adressraums vor Zugriffen von außerhalb der "Secure World" (also zum Beispiel Zugriffen aus dem 'normalen' OS wie Linux) schützt. Das stärkt den Schutz von Geheimnissen, die im OP-TEE gespeichert sind, auf Plattformen wie dem i.MX6 und i.MX8M.

Ein weiterer Patch von Marco repariert die voreingestellte Konfiguration von Speicherbereichen auf der i.MX8MP-EVK Plattform. Der Patch ist auf dieser Plattform erforderlich, da hier das OP-TEE am Ende des 6 Gigabyte großen DRAM liegt.

Gute Zufallszahlengeneratoren spielen eine wichtige Rolle für die Art von kryptographischen Operationen, die oft in das Trusted OS ausgelagert werden. Unser Kollege Philipp Zabel hat drei Patche mit Korrekturen und Verbesserungen für den Treiber des Hardwarezufallszahlengenerators des i.MX 6ULL beigetragen.

Für einen deutschsprachigen Überblick über Verified Boot, die "ARM TrustZone" und OP-TEE hat Marco neulich einen Vortrag auf den Chemnitzer Linux Tagen 2026 gehalten. Die Aufzeichnung gibt es hier: OP-TEE: Offene Sicherheit für ARM – Ein Einblick.

candleLight Firmware

Der candleLight ist ein Open-Hardware USB-CAN-Adapter. Wir bei Pengutronix nutzen die Variante von Linux Automation, den candleLightFD, der nur eines von vielen Geräten ist, das von der freien candleLight Firmware unterstützt wird.

Unser CAN-Experte Marc Kleine-Budde und unser Hardware-Experte Jonas Martin haben dort seit Februar 74 Verbesserungen beigetragen, darunter Verbesserungen am Build-System und Aufräumarbeiten, aber auch Support für neue Hardware und Hardware-Funktionen wie beispielsweise Multi-CAN Boards.

Yocto/OpenEmbedded

Bei Pengutronix arbeiten wir ziemlich viel mit Yocto-BSPs. Deshalb ist es keine Überraschung, dass wir auch dann und wann mal Patche zu Yoctos Build-System OpenEmbedded beitragen. Diesmal war es das Beheben eines Problems, bei dem devtool Git-Worktrees zerstörte, Support für OpenSSL-Config-Snippets, Formatierung repariert, Unterstützung für OpenSSL-PKCS#11-Provider (die OpenSSL-Erweiterungs-API, die nicht veraltet ist), und Provider-PEM-Dateien in signing.bbclass.

barebox

Wir haben etwa 200 Änderungen zu barebox hinzugefügt, und unser Maintainer Sascha Hauer hat daraus zwei Releases gemacht: v2026.02 und v2026.03. Sie bringen neuen Board-Support, bessere NFS-Unterstützung, das Laden von barebox-Proper aus einem ELF-Image und mehr.

Eine schwerwiegende Sicherheitslücke bei der Handhabung signierter FIT-Images wurde sowohl in barebox als auch U-Boot gefunden. Das Attribut hashed-nodes des signature-Knotens, das angibt, welche Knoten signiert werden, war selbst nicht von der Signatur abgedeckt. Das erlaubte es, beliebige unsignierte Images zu booten und so Secure-Boot zu umgehen.

Zur Behebung dieses Problems haben wir die Versionen v2026.03.1 und v2025.09.3 veröffentlicht. Wir bitten Nutzer von U-Boot und barebox, die FIT-Images in ihrem Secure-Boot-Setup nutzen, auf abgesicherte Versionen zu aktualisieren. Weiter sind wir dabei, mit Downstreams und Kunden zu kommunizieren, um Aufmerksamkeit für das Problem zu schaffen.

Mehr Details finden sich im Advisory für U-Boot und barebox, das unser Kollege Ahmad Fatoum geschrieben hat.

PTXdist

PTXdist 2026.03.0 und 2026.04.0 wurden veröffentlicht. Etwa ein Drittel der rund 100 Änderungen kam aus der Community.

Labgrid

In unser Embedded Testing System labgrid wurden 16 Änderungssätze aufgenommen: mehr Hardware-Support, verbesserte Stabilität und neue Funktionen.

RAUC

Bei RAUC gab es dieses Mal keine Community-Beiträge, dafür 57 Änderungen von uns bei Pengutronix: Neben vielen kleinen Verbesserungen und Arbeit an der Dokumentation hat Jan Lübbe große Fortschritte in Richtung des Update-Server-Konzepts erzielt. Damit gibt es jetzt eine Vorschau auf die "Update-Polling"-Funktion, Teil eines neuen Wegs, einfacher automatische Updates auf RAUC-basierten Embedded-Geräten durchzuführen. Dabei kann ein Update-Server die Updates entweder statisch bereithalten oder mithilfe von serverseitigen Skripten kontrollieren, welches Gerät unter welchen Bedingungen aktualisiert werden soll.

Breiteres Ökosystem

Nicht alle Open-Source-Contributions sind Code! Unser Kollege Jan Lübbe hat an die OpenSSL-Entwickler gemeldet, dass eine Sicherheitslücke größere Ausmaße hat als zuvor angenommen. Jonas Rebmann hat ein paar Inkonsistenzen in der systemd-Dokumentation behoben.


Weiterführende Links

Pengutronix aktuelle Open-Source-Contributions

Wir nehmen das Linux-6.19-Release zum Anlass, uns anzuschauen, was Pengutronix in den letzten drei Monaten zu verschiedenen Open-Source-Projekten beigesteuert hat.

Komplexität beherrschen mit Open Source

Vor ein paar Tagen ist etwas spannendes passiert: Ich habe mein allererstes Embedded System wiedergesehen - eine nach nunmehr ca. 34 Jahren defekte Schrittmotorsteuerung für die Teleskope der Volkssternwarte Rothwesten, die ich in den Sommerferien in der 12. Klasse gebaut habe. Schaut man sich die Entwicklung von damals bis hin zu unseren aktuellen industriellen Embedded Systems an, wird schnell klar, warum sowas heute nur noch mit Open Source Software sinnvoll beherrschbar ist.


Pengutronix at the Linux Plumbers Conference

The Linux Plumbers Conference 2024 will take place in Vienna from 18. to 20.09.2024. Luckily this does not overlap with the ELCE. Pengutronix will attend the LPC with six colleagues - so watch out for our T-shirts and hoodies and and feel free to chat with us.


Pengutronix at FrOSCon 2024

Am 17. und 18. 08. 2024 ist es wieder soweit: Die FrOSCon findet an der Hochschule Bonn-Rhein-Sieg in Sankt Augustin statt - und Pengutronix ist wieder als Partner dabei.


umpf - Git on a New Level

Moderne Softwareentwicklung ohne begleitende Versionsverwaltung wie Git ist heutzutage unvorstellbar - Änderungen am Quellcode sollen schließlich nachvollziehbar dokumentiert und beliebige Verssionsstände jederzeit einfach reproduziert werden können. Für Arbeiten an komplexeren Projekten wie etwa dem BSP ("Board Support Package") eines eingebetteten Systems mit mehreren Entwicklungssträngen skaliert ein bloßes Aufeinanderstapeln der einzelnen Änderungen jedoch nicht.


Pulse Width Modulation (PWM) is easy, isn't it? - Turning it off and on again

Part of Uwe Kleine-König's work at Pengutronix is to review PWM (Pulse Width Modulation) drivers. In addition, he also sometimes refactors existing drivers and the Linux kernel PWM subsystem in general.


Yes we CAN... add new features

Have you ever experienced an otherwise fine product that is missing just the one feature you need for your application?


Pengutronix at Embedded World 2022

Welcome to our booth at the Embedded World 2022 in Nürnberg!


Die Pengutronix Kernel-Beiträge in 2021

2022 hat begonnen, und obwohl Corona unsere Workflows stark verändert hat, hat das Pengutronix Team auch in diesem Jahr wieder etliche Beiträge zum Linux-Kernel geleistet. Das letzte Kernel-Release in 2020 war 5.10, das letzte in 2021 war 5.15 - schauen wir also, was sich dazwischen bei uns getan hat.


Pengutronix at FOSDEM 2021

"FOSDEM is a free event for software developers to meet, share ideas and collaborate. Every year, thousands of developers of free and open source software from all over the world gather at the event in Brussels. In 2021, they will gather online." -- FOSDEM