Partager via


GpioClx DDI

Le pilote de contrôleur d’E/S à usage général (GPIO) communique avec l’extension d’infrastructure GPIO (GpioClx) via l’interface de pilote de périphérique GpioClx (DDI). Cette DDI est définie dans le fichier d’en-tête Gpioclx.h et est décrite dans Référence du pilote d’E/S à usage général (GPIO). Dans le cadre de cette DDI, GpioClx implémente plusieurs méthodes de prise en charge des pilotes, qui sont appelées par le pilote de contrôleur GPIO. Ce pilote implémente un ensemble de fonctions de rappel d’événements, qui sont appelées par GpioClx. GpioClx utilise ces rappels pour gérer les demandes d’interruption à partir de broches GPIO configurées en tant qu’entrées d’interruption, et pour transférer des données vers ou depuis des broches GPIO configurées en tant qu’entrées et sorties de données.

Contenu de cette section

Rubrique Description

Méthodes de prise en charge des pilotes dans gpioClx DDI

L’extension d’infrastructure GPIO (GpioClx) est disponible à partir de Windows 8. Les méthodes fournies par le système dans gpioClx DDI sont implémentées dans le pilote en mode noyau GpioClx, Msgpioclx.sys. Ce pilote exporte les points d’entrée pour les méthodes de prise en charge du pilote GpioClx. À compter de Windows 8, Msgpioclx.sys est un composant standard du système d’exploitation.

Fonctions de rappel GPIO facultatives et requises

Un pilote de contrôleur d’E/S à usage général (GPIO) appelle la méthode GPIO_CLX_RegisterClient pour s’inscrire en tant que client de l’extension d’infrastructure GPIO (GpioClx). Pendant cet appel, le pilote transmet un paquet d’inscription à GpioClx qui spécifie une liste de fonctions de rappel d’événements implémentées par le pilote. GpioClx appelle ces fonctions de rappel pour configurer le matériel du contrôleur GPIO, effectuer des opérations d’E/S et gérer les interruptions. GpioClx nécessite un pilote de contrôleur GPIO pour implémenter certaines fonctions de rappel, mais la prise en charge d’autres fonctions de rappel est facultative.

Contextes d’appareil GPIO

Un appareil de contrôleur d’E/S à usage général (GPIO) est représenté par un objet d’appareil d’infrastructure. Le pilote du contrôleur GPIO peut associer un contexte de périphérique à cet objet de périphérique. Le pilote utilise ce contexte de périphérique pour stocker de manière permanente des informations sur l’état du périphérique de contrôleur GPIO.

Partitionnement d’un contrôleur GPIO en banques de broches

Un développeur de pilotes peut, en option, partitionner un périphérique de contrôleur d’E/S à usage général (GPIO) en deux ou plusieurs banques de broches GPIO. Par exemple, un périphérique de contrôleur GPIO qui a 64 broches GPIO peut être décrit par le pilote du contrôleur GPIO comme deux banques, chacune ayant 32 broches GPIO.

Problèmes d’implémentation pour les pilotes de contrôleur GPIO

L’extension d’infrastructure GPIO (GpioClx) fournit une interface de pilote de périphérique flexible (DDI). Cette DDI permet aux développeurs de choisir parmi d’autres interfaces de rappel. Un développeur de pilotes doit implémenter l’ensemble des fonctions de rappel d’événements qui conviennent le mieux à l’architecture matérielle du périphérique de contrôleur GPIO cible.