Pengutronix' aktuelle Open-Source Bestrebungen -
Linux 7.3 Edition
Es ist schon zwei Wochen her, dass Linus Linux 7.3 veröffentlicht hat, 64 Tage nach Linux 7.2. Es besteht aus 18765 Änderungen (ohne Merges), von denen 11 von uns bei Pengutronix stammen. Dieser Blogpost gibt einen Überblick über diese Änderungen und über unsere Beiträge zu anderen Projekten im selben Zeitraum.
Kernel
Im RGA3-Treiber, den er jüngst erst mainline gebracht hat, hat Sven Püschel ein Problem behoben bei dem Workarounds für Hardware-Einschränkungen auch in Fällen angewendet wurden, wo sie gar nicht nötig waren.
Im etnaviv-GPU-Treiber hat Lucas Stach zwei Patches beigesteuert, die sicherstellen, dass ein Reset vollständig durchgeführt wird: sichergehen, dass alle Module nach einem reset im Stillstand sind und nach dem Reset den Status der MMUv2, der Speicherverwaltungseinheit der Vivante GPUs, prüfen.
Oleksij Rempel hat ein Problem behoben, bei dem sich der RTL8168h-PHY aufgrund eines Fehlers im Zusammenhang mit Energy Efficient Ethernet (EEE) aufhängen konnte.
Ahmad Fatoum hat eine unnötige Warnung im Treiber für Ethernet-Switches der Realtek-RTL83xx-Serie abgestellt indem der Reset-GPIO nun über gpiod_set_value_cansleep() angesteuert wird.
Jonas Rebmann hat eine neue Device-Tree-Eigenschaft eingeführt, mit der sich die Standardfarbe von mehrfarbigen LEDs festlegen lässt. Bei Treibern für solche LEDs, die ihre Farbe bisher standardmäßig auf „Schwarz“ gesetzt hatten, ist das notwendig, um die LED ohne einen Userspace-Helfer überhaupt einschalten zu können.
Philipp Zabel hat einen Patch beigetragen, der das Auslesen der Extended Display Identification Data (EDID) über HDMI auf der Entwicklungsplattform FRDM-i.MX8MP ermöglicht.
Aktuelle Compiler wie GCC 15 bieten mit dem counted_by-Attribut eine Möglichkeit, Array-Grenzen zur Laufzeit zu prüfen. An einem struct-member eines flex-Array typs, lässt sich damit ein anderer struct-member als Zähler referenzieren. Dieser Zähler gibt die Anzahl an Elementen im flex-Array an. Damit es bei der Gegenprüfung nicht zu Fehlalarmen kommt, muss dieser Zähler initialisiert sein, bevor auf das Array zugegriffen wird. Der Anfang des Jahres eingeführte Allocator kmalloc_flex() wird deshalb das Zählerattribut initialisieren, sofern der Compiler counted_by unterstützt. Der PXA DMA-Treiber verließ sich nach der Umstellung auf kmalloc_flex() weiterhin darauf, dass der Zähler eines flexiblen Arrays nach der Speicherallokation den Wert null hat, den daraus resultierenden Fehler hat unser Kollege Sascha Hauer behoben.
Schließlich hat Marc Kleine-Budde zwei Aufräum-Patche für den Treiber spi-fsl-lpspi beigesteuert, der für das Low-Power Serial Peripheral Interface (LPSPI) auf der i.MX-Plattform zuständig ist.
OpenSSL
Cryptographic Message Syntax (CMS) ist ein Standard einer kryptografischen Komponente und kommt unter anderem in S/MIME und PKCS #12 zum Einsatz. OpenSSL kann Daten per CMS mit mehreren Zertifikaten signieren, konnte diese aber nur verifizieren, wenn alle Signaturen gültig waren. Damit sich CMS auch für Verfahren wie einen Zertifikats-Parallelbetrieb nutzen lässt, bei denen von mehreren Signaturen nur manche verifizierbar sein müssen, hat unser Kollege Jan Lübbe ein verify_partial-Feature beigesteuert. Damit gelingt die Verifikation auch dann noch, wenn zum Beispiel eine der Signaturen abgelaufen ist.
Mesa
In Mesa hat Lucas Stach ungenutzten Code entfernt und Makros konsistenter gewählt.
OP-TEE
Auf Systemen, bei denen der Bootloader OP-TEE einen Device-Tree übergibt, hat Sascha Hauer die Bootzeit verbessert, indem die Speicherregion des Device-Trees jetzt gecacht werden darf.
Breiteres Ökosystem
Auch im yocto/openembedded Bereich haben wir weiter verbesserungen beigetragen.
Neben unseren Beitragen im breiteren Linux Ökosystem betreuen wir auch unsere eigenen Open Source Projekte wie barebox, rauc, labgrid, ptxdist und andere, und haben dort mehr Änderungen vorgenommen, als wir hier auflisten können/
Weiterführende Links
Pengutronix' aktuelle Open-Source Bestrebungen -
Linux 7.2 Edition
Anlässlich der Veröffentlichung einer neuen Kernel-Version blicken wir wieder zurück auf zwei Monate unserer Bestrebungen, Linux und sein Open-Source-Ökosystem zu verbessern.
Pengutronix' aktuelle Open-Source-Contributions - Linux 7.1 Edition
Ein Überblick über Pengutronix' Beiträge zu Linux 7.1 und anderen Open-Source-ProjektenPengutronix' aktuelle Open-Source-Contributions - Linux 7.0 Edition
Wir nehmen das Linux-7.0-Release zum Anlass, uns anzuschauen, was Pengutronix in den letzten zwei Monaten zu verschiedenen Open-Source-Projekten beigesteuert hat.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.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.
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.
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