rsc's Diary: ELC-E 2022 - Tag 1

Nach zwei Jahren, in denen es nur Online Konferenzen gab, trifft sich in diesem Jahr die Embedded Linux Community zum ersten Mal wieder zur jährlichen Embedded Linux Conference Europe in Dublin, Irland. Seit vielen Jahren ist die ELC-E Teil des Open Source Summits der Linux Foundation; sie ist die größte Veranstaltung ihrer Art, bei der sich die Entwickler des Linux Kernels und des angrenzenden Core-Ecosystems treffen und über aktuelle und zukünftige Entwicklungsthemen diskutieren.

Das Pengutronix Team flog am Sonntag mit 14 Entwicklern nach Dublin; die Konferenz findet hybrid statt, so dass die zu Hause gebliebenen Kollegen zumindest an den Vorträgen online teilnehmen können (wenn auch ohne die berühmten Beer Events und anderen Gelegenheiten zum Socializen ;). Parallel zur ELC-E fand in Dublin auch die Linux Plumbers Conference statt.

How ARM Systems are Booted: An Introduction to the ARM Boot Flow

Im ersten unserer Vorträge auf der ELC-E gab Rouven Czerwinski am Dienstag einen Überblick über den Bootprozess auf der ARM64 Plattform. Der Vortrag war Teil der neuen "Embedded Essentials"-Serie: Die Idee dabei war, gerade neuen Teilnehmern einen Überblick über mehr allgemeinere und nicht so hoch spezialisierte Themenbereiche zu geben. Das Konzept scheint aufzugehen - der Vortragssaal war gut gefüllt.

Im Gegensatz zu ARM32, wo am Bootprozess im Wesentlichen der Bootloader und der Kernel beteiligt sind und nur zwei Exception-Level relevant sind, sind auf ARM64 weitere Komponenten involviert.

Die erste Stufe besteht aus dem ROM-Code (BL1), dessen Aufgabe das Laden der weiteren Stufen vom Massenspeicher ist; dieser Teil ist weiterhin herstellerspezifisch. Hier gibt es für Entwicklungszwecke einen Mechanismus zum Laden über serielle Schnittstellen. Die zweite Stufe (BL2) besteht dann entweder aus einem U-Boot SPL, einem barebox PBL oder einer TF-A.

Die ARM Trusted Firmware (TF-A) implementiert eine Reihe von standardisierten Firmware Runtime Services, z.B. PSCI oder SCMI. Leider ist die TF-A unter der MIT Lizenz lizensiert, was die Hersteller nicht dazu zwingt, ihren Sourcecode auch immer zu veröffentlichen oder durch ein etabliertes Review-Verfahren (wie z.B. beim Kernel üblich) qualitätszusichern. Neben dem Secure Boot-Mechanismus stellt die TF-A auch das DDR Link Training, das Frequency Scaling und das Power State Coordination Interface (PSCI) zur Verfügung.

SCMI, das System Control and Memory Interface, kümmert sich um das An- und Abschalten von CPU Cores sowie um die Takte; diese Dienste müssen in der TF-A implementiert werden, da es z.B. passieren kann, dass Linux einen Takt nicht benötigt, die Secure World jedoch schon.

Der eigentliche Bootloader startet dann in Exception Level 2 und wertet dann in der Regel den Open Firmware Devicetree aus und stellt die bootloaderüblichen Mechanismen bereit, um einen Kernel zu beschaffen und zu starten.

Im Gegensatz zu ARM32 gibt es keinen standardisierten Dekompressor im Kernel, so dass der Bootloader diese Aufgabe übernehmen muss. Im Anschluss werden die Interrupts maskiert, der Standard Timer initialisiert und der Kernel an eine definierte Adresse geladen. Die MMU und die Data Caches werden abgeschaltet, die Adresse des Devicetrees in Register 0 geladen und der Kernel angesprungen.

All Attendees Reception

Wie in 2015 (als die ELC-E zum letzten Mal in Dublin war), fand die Teilnehmer-Party im Guiness Storehouse statt. Das Gebäude ist eine nette Location, allerdings ist es aufgrund der Tatsache, dass durch die gemeinsame Veranstaltung mit dem Open Source Summit auch viele Entwickler aus komplett anderen Themenfeldern wie Cloud, Kubernetes und Hyperledger dabei sind, immer etwas schwierig, neue Embedded-Leute auf der Veranstaltung zu finden.

In jedem Fall war der Abend eine nette Gelegenheit, Kontakte zu pflegen und herauszufinden, was die anderen Embedded Linux Entwickler in den Corona-Jahren so alles getrieben haben, während ein persönliches Treffen nicht möglich war.


Weiterführende Links

rsc's Diary: ELC-E 2022 - Tag 2

Das Dublin Convention Centre ist riesig - es gibt mehr als genug Platz für die vielen Teilnehmer des Open Source Summit. Zum Glück wird es die Vorträge nach der Konferenz auf YouTube geben, so dass es nicht schlimm ist, wenn man vor Ort nicht alle Vorträge hören kann. Hier ist mein Bericht zu den Vorträgen, die ich am zweiten Konferenztag gehört habe.


rsc's Diary: ELC-E 2022 - Tag 3

Das Convention Centre liegt direkt am Liffey, nur wenige Minuten Fußweg von der O'Connell Bridge, Temple Bar und dem Trinity College entfernt. Ein Besuch auf der ELC-E ist immer auch eine gute Gelegenheit, interessante Städte in Europa kennenzulernen. Und hier ist auch schon mein Bericht der Talks, die ich am Tag 3 gehört habe.


rsc's Diary: ELC-E 2022 - Tag 4

Freitag war der letzte Tag der ELC-E 2022 und somit auch der Tag des traditionellen ELC-E Closing Games. Tim Bird berichtete gewohnt kurzweilig über den aktuellen Stand der Embedded Linux World (Universe?) Domination. Und natürlich gab es auch am letzten Tag einige interessante Vorträge.


More Conferences in September: Yocto Project Developer Day and KiCon Europe

September 2024 brings a wide variety of conferences: Pengutronix will present talks at the ELCE, Linux Plumbers Conference and All Systems Go. Additionally we will attend two more conferences: The Yocto Project Developer Day in Vienna and the KiCon Europe in Bochum.


Pengutronix at All Systems Go!

This years All Systems Go! will take place on 25. and 26.09.2024 in Berlin. The ASG is a conference about low-level user-space topics. We are happy to contribute a talk about updating systems using RAUC and composefs:


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 Open Source Summit Europe and Embedded Linux Conference Europe

The Embedded Linux Conference Europe is Pengutronix' most important conference of the year. It is a good place to meet new faces in the embedded community, discuss current topics and future developments with maintainers and developers - and of course: have a beer with old friends. As usual, many Pengutronix colleagues will attend: this year we'll have a 14 person team on site. 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.


Pengutronix auf der Embedded World 2024

Treffen Sie uns auf der Embedded World 2024 in Nürnberg! Sie finden uns wieder in Halle 4, Stand 4-261. Wie üblich zeigen wir auf unserem Messestand Demonstratoren zu aktuellen Themen.


FrOSCon 2023

In ein paar Stunden beginnt die 18. FrOSCon an der Hochschule Bonn-Rhein-Sieg. Pengutronix ist wieder mit einem kleinen Team vor Ort. An einem der Partner-Stände zeigen wir wieder einige unserer Aktivitäten in der Open Source Community. Dafür bringen wir unseren labgrid Demonstrator und die FPGA Demo mit.