Formation
STM32MP15x

Réf : PHYTEC-5182

Formation STM32MP15x

  • Maîtriser l’installation de l’environnement Yocto
  • Maîtriser les commandes usuelles Bitbake
  • Gérer la configuration de build et de la Machine phyBOARD®-Sargas STM32MP157
  • Ajouter et Mettre en oeuvre ses propres layers Yocto
  • Configurer et adapter le noyau linux à sa plate-forme  STM32MP15x 
  • Construire et customisez son image Linux openLinuxST avec Yocto
  • Générer ses propres devicetree à l’aide de CubeMX pour STM32 MPU
  • Adapter les drivers du noyau Linux pour STM32MP15x

Notre formation Yocto BSP pour processeurs STM32MP15x est adaptée aux développeurs en informatique et techniciens dans le domaine de Linux embarqué confrontés aux problèmes de portage d’applications sur système STM32MP15x sous Yocto.

Projet Yocto

  • Présentation du projet Yocto
  • OpenEmbedded Core et poky
  • Notion de Layers et de Recettes
  • Les utilitaires GIT et repo
  • Rôle de l’outil de construction bitbake

Yocto STM32 MPU openSTLinux

  • Les layers spécifiques à la distribution openSTLinux
  • Les images applicatives proposées

BSP Phytec Yocto STM32 MPU

  • Fichier local.conf et réglages globaux
  • Notion de MACHINE et de FEATURES

Travaux pratiques

  • Mise en oeuvre d’une configuration de BSP avec choix des layers, configuration de la distribution openSTLinux et des images st-image à générer pour une machine spécifique : Kit SBC Sargas phyCORE STM32MP157
  • Ecriture et ajout d’un layer à la compilation du système Linux embarqué Yocto pour machine STM32MP15x
  • Ajout de son propre layer Yocto BSP et création de sa propre machine STM32MP15x

Phytec Yocto STM32 MPU BSP (suite)

  • Spécificités et optimisation du noyau linux stm32mp sous Yocto
  • Customisation du kernel devicetree à l’aide de CubeMX

Travaux pratiques

Customisation d’une Image Yocto openSTLinux

  • Méthodologie
  • Recette minimale de construction de paquetage

Travaux pratiques

  • Écriture d’une recette simple Yocto pour l’intégration de votre application à l’image filesystem finale.
  • Analyse d’exemples de paquetages
  • Ajouter des fichiers de configuration à une recette

Customisation d’une Image Yocto openSTLinux (suite)

  • Customisation de recettes
  • Notion de classes
  • Ajout d’étapes de construction

Travaux pratiques

  • Recette d’ajout de script de démarrage avec systemd
  • Ajout d'utilisateur Linux

SDK Yocto STM32MP15x

  • Génération et déploiement d’un SDK Yocto complet
  • Ajout de package-dev et header kernel pour développement de device driver
  • Notion d’Extended-SDK

Travaux pratiques

Option 1 (1 journée)

Introduction au développement de pilotes Linux / Pilotes de périphériques sous Linux

  • Introduction à la programmation en mode noyau
  • Architecture d’un module simple
  • Programmation de pilotes de périphériques simples : Structure de la File Operation
  • API du noyau Linux et gestion mémoire en Kernel Mode

Travaux pratiques

  • Compilation et déploiement d’un module linux externe/propriétaire avec le SDK Yocto

Concept de Communication Inter Processeurs

  • Notion de Domain ID et Ressources
  • API RPMSG FreeRTOS M4
  • Drivers RPMSG Linux

Travaux pratiques
• Echanges de données entre application sous Linux et Services FreeRTOS via RPMSG

Option 2 (1/2 journée)

Mise en oeuvre de boot secure

  • Context Cortex-A Secure et Non-Secure
  • Basic boot chain et trusted boot chain
  • Trusted Firmware et Trusted Devices
  • Notion de Trusted Application et de secure Monitor
  • Crypto support et Signed Bootloader

Travaux Pratiques

  • Mise en oeuvre de Trusted device et limitations STM32MP15x

Option 3 (1/2 journée)

Mise en oeuvre de Mise à jour RAUC

  • Définition d'une configuration mise à jour redondante sur plateforme STM32MP15x : notion de machine et de revision
  • Variables d"environnement et Script u-boot spécifique Rauc
  • Bundles : Image RAUC
  • Gestion de la signature/cryptage des dundles RAUC
  • Services de mise à jour automatisée : USB updater et hawkbit updater

Travaux Pratiques

  • Création et installation d'un dundle signée 
  • Mise en oeuvre d'un client et d'un serveur Hawkbit de gestion déploiement de mises à jour

Option 4 (1/2 journée)

 

Mise en oeuvre du SDK Qt5 Yocto

  • Spécificité d'une image Yocto Linux Qt5 
  • Génération et installation du SDK Qt5 Yocto sur poste de développement

Travaux Pratiques

  • Installation du SDK Qt5 Yocto et configuration sous QtCreator
  • Déploiement et débogage d'application Qt5 sur plateforme  SBC phyBOARD-Sargas STM32MP157
  • Ecriture d'une recette spécifique Yocto de compilation et installation d'application Qt5, classe qmake, variables d'environnement, service systemd spécifique...