Formation STM32MP2 Implementation | Ac6 Training

ac6-training, un département d'Ac6 SAS
FR
FrançaisEnglish
 
go-up

ac6 ac6-training Processors STM32 STM32MP2 Implementation
STR23STM32MP2 Implementation
This course describe the STM32MP2 Implementation and practical examples

Objectives

  • Understand the STM32MP2 architecture (dual Cortex-A35 + Cortex-M33) and memory/interconnect map.
  • Bring up the full boot chain: TF-A → OP-TEE → U-Boot → Linux, and read meaningful boot logs.
  • Configure and validate DDR and clock trees; confirm frequencies and governors on real hardware.
  • Build and customize OpenSTLinux (Yocto) images; add a simple layer/recipe.
  • Enable devices via Device Tree (pinmux, clocks, regulators) and debug with dmesg/sysfs.
  • Set up storage and flashing flows (eMMC/SD/USB-DFU) with safe partitioning.
  • Bring up key I/O: Ethernet/TSN, USB (host/gadget), and PCIe; run quick throughput checks.
  • Configure graphics and media: DRM/KMS + GPU, VPU pipelines, CSI-2 camera and DSI/RGB display.
  • Offload real-time work to the M33 core; exchange data with Linux via OpenAMP/RPMsg.
  • Run a small Edge-AI sample (CPU/GPU/NPU) and compare performance/latency.
  • Apply platform security: secure boot options, OP-TEE services, keys/OTP, tamper basics.
  • Implement OTA/rollback strategy (SWUpdate/Mender concepts) and a practical recovery path.
  • Tune power management (cpufreq/cpuidle) and record simple power profiles.
  • Produce a production checklist: versioning, UID/serial, crash/reset logs, diagnostics, and update policy.
  • Cours théorique
    • Support PDF (en anglais), imprimé en présentiel ; à distance via Teams.
    • Assistance du formateur tout au long de la formation.
  • Activités pratiques (40-50% de la durée)
    • Exemples de code, exercices et solutions.
    • À distance : un PC Linux en ligne par stagiaire, avec carte émulée ou physique selon le cours.
    • Présentiel / sur site : un PC (un par binôme au-delà de 6 stagiaires), carte cible et manuel d'installation si nécessaire.
  • Machine virtuelle préconfigurée téléchargeable pour refaire les TP après le cours.
  • Chaque session débute par un point avec les stagiaires.
  • Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
  • Les prérequis sont évalués avant la formation.
  • Les progrès sont évalués par le formateur via les exercices pratiques, et par des quizz pour les sections sans exercices.
  • Chaque stagiaire reçoit une attestation de réussite.
  • En cas de prérequis manquant, une formation différente ou complémentaire est proposée.

Plan du cours

  • Dual A35 cluster; M33 real-time core.
  • AXI/AHB fabric; memory regions.
  • GPU / VPU / NPU blocks (high-level).
  • Display (RGB/LVDS/DSI), CSI-2 camera.
  • High-speed I/O: PCIe, TSN GbE, USB
Exercise :  SoC map quick tour
  • ROM → TF-A (FSBL) → OP-TEE (S-EL1) → U-Boot (SSBL) → Linux.
  • Boot media: eMMC/SD/USB-DFU/NAND (board-dep).
  • Device trees passed by U-Boot.
  • Secure boot hooks & fuses (overview).
  • Recovery & UART/USB consoles.
Exercise :  Hello boot
  • DDR type (LPDDR4/DDR4/DDR3L) basics.
  • TF-A DDR init vs board tuning.
  • RCC & PLL trees; kernel/Peripheral clocks.
  • DVFS/cpufreq overview.
  • MCO/clock probes for validation
Exercise :  Clock sanity
  • Linux pinctrl: groups/functions.
  • DTS vs DT overlay structure.
  • Regulators/GPIO/IRQ nodes.
  • Clocks/resets in DT.
  • Common mistakes & dmesg hints.
Exercise :  DTS tweak
  • Partitioning (boot/rootfs/data).
  • eMMC vs SD vs NAND trade-offs.
  • WIC/SD-card images vs dfu-util.
  • U-Boot mmc/fatload/env tips.
  • Filesystem choices (ext4/squashfs).
Exercise :  Flash flow
  • Layers: meta-st-openstlinux, machine configs.
  • repo init, bitbake targets.
  • SDK/cross-toolchain export.
  • Image types (core/weston/minimal).
  • Incremental rebuilds & sstate.
Exercise :  Build & boot
  • Kconfig vs DTS responsibilities.
  • Out-of-tree driver basics.
  • Debug: dmesg, trace-cmd, devlink.
  • UIO/GPIO-chardev access.
  • Packaging modules in Yocto.
Exercise :  LED/GPIO driver
  • PHY setup; TSN capabilities (high-level).
  • ip link, ethtool, iperf3 checks.
  • USB gadget vs host roles.
  • PCIe root complex basics.
Exercise :  Net bring-up
  • Resource isolation framework.
  • TZC/ETZPC-like gates (periph/DDR).
  • OP-TEE secure services.
  • Keys/OTP and tamper (overview).
  • Secure storage story
Exercise :  OP-TEE ping
  • Dual-A/B rootfs strategy.
  • SWUpdate/mender (concepts).
  • U-Boot env for rollback.
  • DFU recovery path.
  • Factory vs field flows.
Exercise :  Safe update sim
  • DRM/KMS planes/connectors.
  • 3D GPU overview (1080p UIs).
  • Mesa/Wayland (Weston).
  • Performance tips (buffers).
  • Multi-display notes
Exercise :  Weston demo
  • Formats & pixel planes.
  • H.264 decode/encode HW.
  • GStreamer pipelines.
  • Zero-copy paths idea.
  • Storage & bandwidth tips
Exercise :  GStreamer test
  • CSI-2 lanes & DT nodes.
  • Sensor drivers & controls.
  • ISP blocks (conceptual).
  • V4L2 capture basics.
  • Sync/exposure notes.
Exercise :  Camera capture
  • Connector DT bindings.
  • Mode setting (EDID/timings).
  • Backlight/panel drivers.
  • VSYNC/TE considerations.
  • Tear & bandwidth checks
Exercise :  Panel bring-up
  • NPU
  • Toolchains (TFLite/ONNX).
  • Delegate selection (CPU/GPU/NPU).
  • Pre/post-processing tips.
Exercise :  Demo
  • CubeMP2 HAL/LL layout.
  • Project templates in CubeIDE.
  • Clocks/IRQs on M33.
  • Bare-metal vs FreeRTOS.
  • Debug attach options
Exercise :  M33 hello
  • VirtIO/RPMsg concepts.
  • Shared memory carve-outs.
  • Mailbox/interrupt routing.
  • Message framing policy.
Exercise :  RPMsg ping-pong
  • UART/I²C/SPI from Linux.
  • Offloading real-time to M33.
  • PWM/capture (M33 side).
  • DMA pipelines.
  • Latency budgeting.
  • eMMC/SD tuning (HS modes).
  • ext4 vs squashfs trade-offs.
  • I/O schedulers & fio.
  • Wear leveling & logs.
  • Mount options & journaling.
Exercise :  I/O bench
  • Firewalling basics (nftables).
  • Secure shells/keys.
  • Time sync (PTP/NTP).
  • TSN concepts (sched/queues).
  • Logging & metrics.
Exercise :  Net hardening
  • cpufreq/governors.
  • cpuidle/suspend-to-RAM.
  • Peripheral low-power.
  • Display blanking strategy.
Exercise :  Power sweep
  • OTP/fuses & boot keys.
  • Active tamper inputs.
  • Secure RTC/monitors.
  • Rollback prevention.
  • Audit logging
Exercise :  Tamper demo
  • Golden image layout.
  • Serial/UID/keys injection.
  • Manufacturing scripts.
  • Boundary/functional tests.
  • Field diagnostics hooks.
Exercise :  Factory script
  • BSP update policy.
  • Yocto release strategy.
  • Security CVE handling.
  • Backup & recovery docs.
  • Next steps & references.
Exercise :  Self-audit
Plus d'information

Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.

Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter

Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription

Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.

Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.

Dernière mise à jour du plan de cours : 20 mai 2026

L'inscription à nos formations est soumise à nos Conditions Générales de Vente