Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les pilotes pour les périphériques qui envoient des interruptions aux broches d’E/S à usage général (GPIO) acquièrent des interruptions GPIO en tant que ressources d’interruption Windows abstraites. Les pilotes KMDF (Kernel-Mode Driver Framework) et les pilotes UMDF (User-mode Driver Framework) reçoivent ces ressources via leurs fonctions de rappel d’événements EvtDevicePrepareHardware.
Les pilotes de périphérique qui utilisent des ressources d’interruption basées sur GPIO peuvent ignorer les détails de l’implémentation de bas niveau, par exemple si une interruption est générée par une broche GPIO au lieu d’un contrôleur d’interruption ou d’une broche d’interruption sur une puce de processeur.
Une interruption basée sur GPIO est une ressource de type CmResourceTypeInterrupt. Les paramètres de configuration de cette interruption sont contenus dans le membre u.Interrupt de la structure CM_PARTIAL_RESOURCE_DESCRIPTOR qui décrit la ressource d’interruption. Pour connecter une routine de service d’interruption (ISR) à une interruption, un pilote UMDF ou KMDF fournit à la fois les descriptions brutes et traduites de la ressource d’interruption à une méthode de création d’interruption.
Le pilote KMDF ou UMDF pour un périphérique appelle la méthode WdfInterruptCreate pour connecter un ISR à l’interruption de l’appareil. L’un des paramètres d’entrée de cette méthode est un pointeur vers une structure WDF_INTERRUPT_CONFIG qui contient des informations de configuration pour l’interruption.
Si un pilote de périphérique utilise plusieurs ressources d’interruption GPIO, ce pilote doit être conscient de l’ordre dans lequel ces ressources apparaissent dans les listes de ressources brutes et traduites fournies en tant que paramètres d’entrée à la fonction EvtDevicePrepareHardware ou à la méthode OnPrepareHardware . Les ressources de ces listes apparaissent dans l’ordre dans lequel elles sont décrites dans le microprogramme de la plateforme, qui doit correspondre à l’ordre attendu par le pilote.