Formation Drivers USB Linux: Ecriture de drivers USB

Transcription

Formation Drivers USB Linux: Ecriture de drivers USB
Formation Drivers USB Linux: Ecriture de drivers USB-2.0 et
USB-3.0 sous Linux - Systèmes d'Exploitation: Linux
D8 - Drivers USB Linux
Ecriture de drivers USB-2.0 et USB-3.0 sous Linux
Objectifs
Apprendre à créer des drivers device et gadgets pour USB-2.0 et USB-3.0
Explorer la richesse de Linux concernant les drivers USB hôte.
Comprendre le support Linux des gadgets USB.
Découvrir le support du standard OTG (2.0 et 3.0)
Comprendre les spécificités du noyau Linux dans la gestion des devices et des drivers.
Savoir paramétrer le noyau Linux à la compilation et en fonctionnement pour une gestion optimale du hotplug.
Comprendre comment sont générés les événements hotplug et savoir les utiliser dans l'écriture de ses drivers.
Installer et utiliser les projets externes hotplug : Udev, libusb, etc...
Connaître les évolutions de Linux jusqu'au noyaux 2.6.3ç et 3.x.
Maîtriser les techniques de debugging noyau.
Nous utilisons un noyau Linux récent, disponible sur www.kernel.org ou fourni avec la distribution Linux utilisée
Les exercices se font sur des cartes cibles :
Carte à base de processeur ARM9 d'Atmel, avec sonde JTAG Lauterbach.
Les exercices se font en utilisant l'environnement de développement intégré System Workbench for Linux - Basic Editionqui
est remis à tous nos stagiaires pour leur permettre de continuer, après la formation,à travailler dans un environnement convivial
et efficace.
-->
Matériel
Un pc par binôme
Une carte cible par binôme
Une sonde jtag Lauterbach par binôme
Support de cours
CDROM avec documentation et exercices corrigés
Pré-requis
Bonne pratique de la programmation en C sous Linux.
Connaissance de la programmation Linux kernel (niveau cours D3)
D8 - Drivers USB Linux
Plan
1er jour
Programmation noyau (rappels)
Le développement de module noyau.
Les objets du noyau.
Le système de fichier sysfs.
Exercice : Ecriture d'un module noyau illustrant la création et l'utilisation des ksets et kobjs.
Hotplug
Hotplug Kernel : Les uevents
Hotplug Utilisateur : Udev
Hotplug Utilisateur : Hal et Dbus
Exercice : Ecriture d'un module noyau émettant ses propres événements hotplug.
Exercice : Compilation croisé, paramétrage et utilisation de l'outil Udev.
2ème jour
Devices et Drivers
Le modèle device/driver sous Linux.
Les classes et types de périphériques.
Les types de bus.
Devices & drivers génériques.
Devices & drivers système.
Devices & drivers plate-forme.
Exercice : Ecriture d'un device et d'un driver plate-forme illustrant les mécanismes de matching interne.
Drivers USB
Le bus USB.
Les périphériques USB.
L'interface utilisateur USB.
Les descripteurs USB.
Les requêtes USB.
Les pilotes USB.
Exercice : Ecriture d'un module noyau usb illustrant l'utilisation des urbs.
Exercice : Ecriture d'un version du même module utilisant les requêtes usb synchrones.
3ème jour
La libUSB
Les bibliothèques libUSB.
La libUSB 0.1.12.
La libUSB 1.0
Exercice : Compilation croisée de la libusb.
Exercice : Ecriture d'un driver usb tournant dans l'espace utilisateur.
02/19/17
D8 - Drivers USB Linux
02/19/17
Drivers USB gadget
Les pilotes gadget USB.
Les pilotes gagdet USB composites.
Les pilotes gadget USB OTG.
Exercice : Ecriture d'un driver gadget coté cible et du driver correspondant coté pc.
Renseignements pratiques
Durée : 3 jours
Prix : 1950 € HT
SARL au capital de 138600 € - SIRET 449 597 103 00026 - RCS Nanterre - NAF 722C - Centre de Formation : 19, rue Pierre Curie - 92400 Courbevoie
Siège social et administration : 21, rue Pierre Curie - 92400 Courbevoie - Tél. 01 41 16 80 10 - Fax. 01 41 16 07 78
Dernière mise à jour du site: Sun Feb 19 19:11:07 2017
http://www.ac6-formation.com/