Seminar / Training
Dieses Intensivseminar bündelt die technischen Grundlagen, den Build- und Imageprozess sowie die Plattformportierung in einer durchgehenden fünftägigen Laborstrecke. Vom Resetpfad über BL-Stufen, Toolchain, FIP, Speicherlayout, Device Tree und FCONF bis zu BL2, BL31, PSCI, GIC, Integration und erstem vollständigem Boot entsteht eine belastbare Portierungsbaseline.
Inhaltsübersicht
- Tag 1: Architektur und Bootkette
- Tag 1: Buildsystem und Toolchain
- Tag 2: FIP, Images und Bootmedien
- Tag 2: Device Tree, FCONF und Handoff
- Tag 3: Speicherlayout und XLAT
- Tag 3: Plattformgerüst und frühe Initialisierung
- Tag 4: BL2, BL31 und Image-Handoff
- Tag 4: Topologie, PSCI und GIC
- Tag 5: Integration mit U-Boot, UEFI, Linux und Trusted OS
- Tag 5: Test und Portierungsabnahme
Lernziele
- TF-A-Architektur und Bootphasen anhand realer Quell- und Laufzeitpfade erklären.
- Reproduzierbare Buildprofile und FIP-Artefakte erstellen und untersuchen.
- Device Tree, FCONF, Handoff und Speicherlayout für eine Plattform konfigurieren.
- Eine neue Plattform bis BL33 portieren und grundlegende PSCI- und GIC-Funktionen integrieren.
- Die Portierung mit Tests, Logs und einer technischen Abnahme dokumentieren.
Seminarinhalte
1. Tag 1: Architektur und Bootkette
- Schritt 1: Sicherheitszustände, Exception Levels und TF-A-Komponenten werden als Gesamtarchitektur modelliert.
- Schritt 2: BL1, BL2, BL31, BL32 und BL33 werden im Quellbaum und in einem Bootlog verfolgt.
- Schritt 3: Cold Boot, Warm Boot und Übergabedaten werden mit festen Prüfpunkten dokumentiert.
Praxis: Ein vollständiger Referenzboot wird gebaut, ausgeführt und als kommentierte Zeitleiste ausgewertet.
2. Tag 1: Buildsystem und Toolchain
- Schritt 1: Toolchain, Plattformwahl, Buildoptionen und Featureabhängigkeiten werden reproduzierbar festgelegt.
- Schritt 2: Debug-, Release- und Securityprofile werden getrennt erzeugt.
- Schritt 3: Map-, Symbol- und Größeninformationen werden zur frühen Fehlererkennung genutzt.
Praxis: Eine Buildmatrix erzeugt mehrere vergleichbare Artefakte mit dokumentierter Konfiguration.
3. Tag 2: FIP, Images und Bootmedien
- Schritt 1: Image-IDs, Zertifikate, FIP-Einträge und Ladebeziehungen werden inventarisiert.
- Schritt 2: Ein Paket wird erstellt, inspiziert, verändert und erneut geprüft.
- Schritt 3: Fehlerpfade für fehlende, beschädigte oder inkompatible Images werden getestet.
Praxis: Ein eigenes FIP-Layout mit BL31, BL32 und BL33 wird aufgebaut und analysiert.
4. Tag 2: Device Tree, FCONF und Handoff
- Schritt 1: Statische und dynamische Konfigurationsdaten werden nach Vertrauen und Lebenszyklus getrennt.
- Schritt 2: Parser und Getter werden mit strikter Validierung ergänzt.
- Schritt 3: Übergabedaten werden über Device Tree oder Transferstruktur an die nächste Stufe bereitgestellt.
Praxis: Eine Plattformoption wird dynamisch konfiguriert und mit Negativfällen abgesichert.
5. Tag 3: Speicherlayout und XLAT
- Schritt 1: ROM, SRAM, DRAM, Geräte und sichere Reservierungen werden in einem konsistenten Plan erfasst.
- Schritt 2: XLAT-Regionen erhalten minimale Attribute und korrekte Ausrichtung.
- Schritt 3: MMU-, Cache- und Fault-Diagnosen werden mit Symbolen und Seitentabellen korreliert.
Praxis: Ein Speicherplan wird implementiert und durch Zugriffs- sowie Überlappungstests geprüft.
6. Tag 3: Plattformgerüst und frühe Initialisierung
- Schritt 1: Eine Referenzplattform wird ausgewählt und in eine neue Plattformstruktur überführt.
- Schritt 2: Buildintegration, frühe Konsole und minimale Hardwareinitialisierung werden umgesetzt.
- Schritt 3: Der erste Bootmeilenstein wird mit eindeutigen Logmarken erreicht.
Praxis: Eine neue Plattform baut und erreicht die frühe BL2- oder BL31-Konsole.
7. Tag 4: BL2, BL31 und Image-Handoff
- Schritt 1: Bootmedium und Image-Policies werden an die Zielplattform angebunden.
- Schritt 2: BL31 initialisiert GIC, Timer und Runtime-Service-Grundlage in korrekter Reihenfolge.
- Schritt 3: Entry-Point-Informationen und Sicherheitszustände werden vor der Übergabe validiert.
Praxis: BL31 und BL33 werden geladen und kontrolliert bis zum nächsten Softwarelayer gestartet.
8. Tag 4: Topologie, PSCI und GIC
- Schritt 1: Core- und Clusterstruktur werden aus MPIDR und Hardwaredaten abgeleitet.
- Schritt 2: CPU_ON, CPU_OFF und Reset werden mit Plattformoperationen verbunden.
- Schritt 3: Sichere Interruptgruppen und Sekundärkernstart werden gemeinsam getestet.
Praxis: Mehrere Kerne starten, führen PSCI-Aufrufe aus und verarbeiten einen sicheren Interrupt.
9. Tag 5: Integration mit U-Boot, UEFI, Linux und Trusted OS
- Schritt 1: BL33- und optionale BL32-Payloads werden mit kompatiblen Übergabedaten eingebunden.
- Schritt 2: Device Tree, Bootargs, Speicherreservierungen und Runtime-Aufrufe werden schichtübergreifend geprüft.
- Schritt 3: Fehler werden anhand einer gemeinsamen Boot- und Schnittstellenmatrix eingegrenzt.
Praxis: Eine vollständige Startkette bis Linux oder UEFI wird ausgeführt und validiert.
10. Tag 5: Test und Portierungsabnahme
- Schritt 1: Build-, Boot-, Multicore-, PSCI- und Negativtests werden in einer Matrix zusammengeführt.
- Schritt 2: Bekannte Grenzen und Plattformverträge werden versionsfest dokumentiert.
- Schritt 3: Die Portierung erhält klare Freigabe- und nächste Ausbaukriterien.
Praxis: Ein Abschlusslauf erzeugt Artefakte, Testbericht und technische Portierungsbaseline.
Zielgruppe
Firmware- und BSP-Entwickler, SoC-Integratoren, Embedded-Linux-Teams und Plattformarchitekten, die TF-A auf eine eigene Plattform bringen.
Voraussetzungen
Gute C- und Linux-Kenntnisse, AArch64-Grundlagen, Cross-Compilation und grundlegendes Verständnis von Bootloadern, Device Tree, MMU und Multicore-Systemen.
Praxisumgebung
Linux-Arbeitsplatz mit TF-A, AArch64-Toolchain, Binutils, Debugger, QEMU oder FVP sowie U-Boot, UEFI, Linux oder Trusted-OS-Testkomponenten.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 5 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 2.995 zzgl. MwSt. Inhaus: € 8.500 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Firmware- und BSP-Entwickler, SoC-Integratoren, Embedded-Linux-Teams und Plattformarchitekten, die TF-A auf eine eigene Plattform bringen. |
| Voraussetzungen: | Gute C- und Linux-Kenntnisse, AArch64-Grundlagen, Cross-Compilation und grundlegendes Verständnis von Bootloadern, Device Tree, MMU und Multicore-Systemen. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Quellcodeanalyse, Demonstrationen, praktische Übungen am System und kontrollierte Fehlerfälle |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
