Les travaux pratiques sont menés sur des tableaux cibles, qui peuvent être : | ||
Cartes "STM32MP15-DISCO" à base de deux Cortex/A7 de STMicroelectronics. | ||
Cartes "SabreLite" de NXP basées sur le Quad Cortex/A9. | ||
Cartes "imx8q-evk" de NXP basées sur le Quad Cortex/A53. | ||
Nous utilisons un kernel linux récent (4.x), tel que supporté par le fournisseur de la puce. |
Exercise : | Writing the "hello world" kernel module | |
Exercise : | Adding a driver to kernel sources and configuration menu | |
Exercise : | Using module parameters | |
Exercise : | Writing interdependent modules using memory allocations, reference counting and linked lists |
Exercise : | Display dynamic traces on the running kernel | |
Exercise : | Debug a module initialization using kgdb |
Exercise : | Fixing race conditions in the previous lab with mutexes |
Exercise : | Step by step implementation of a character driver: | |
• | driver registration (major/minor reservation) and device special file creation (/dev) |
Exercise : | Step by step implementation of a character driver: | |
• | Implementing open and release | |
• | Implementing read and write | |
• | Implementing ioctl | |
• | Implementing mmap |
Exercise : | implementation of a pipe-like driver: | |
• | implementing waiting and waking | |
• | adding non-blocking, asynchronous and multiplexed operations (O_NONBLOCK, SIGIO, poll/select) |
Exercise : | Polling gpio driver with raw register access | |
Exercise : | Interrupt-based gpio driver with raw register access | |
Exercise : | gpio driver using the gpiolib |
Exercise : | Implementing a platform driver and customizing the device tree to associate it to its device (a serial port) | |
Exercise : | Implementing power management in the previous driver | |
Exercise : | Implementing remote wakeup in the previous driver |
Exercise : | Writing a custom class driver | |
Exercise : | Writing a misc driver |
Exercise : | Implementing slave DMA in a serial port driver |
Exercise : | Writing a USB host driver |
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 a été conçu spécifiquement pour être dispensé à distance. Nos formateurs sont bilingues et assurent le cours en français ou en anglais.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à deux jours ouvrés avant le début de la formation.
Dernière mise à jour du plan de cours : 10 mars 2020
L'inscription à nos formations est soumise à nos Conditions Générales de Vente