IDE_HW_INTERRUPT fonction de rappel (irb.h)
La routine du pilote miniport IdeHwInterrupt gère les interruptions de l’adaptateur de bus hôte (HBA) auquel le contrôleur du pilote miniport est connecté.
Syntaxe
IDE_HW_INTERRUPT IdeHwInterrupt;
BOOLEAN IdeHwInterrupt(
[in] PVOID ChannelExtension
)
{...}
Paramètres
[in] ChannelExtension
Pointeur vers l’extension de canal.
Valeur retournée
AtaHwInterrrupt retourne TRUE si l’interruption est générée par l’un des canaux du contrôleur. Si un canal n’a pas généré l’interruption, la routine doit retourner FALSE aussi rapidement que possible.
Remarques
La routine IdeHwInterrupt effectue des opérations d’E/S pilotées par interruption.
Si le canal indiqué n’a pas généré l’interruption, le pilote miniport doit effectuer un deuxième appel (récursif) à la routine IdeHwInterrupt pour gérer les interruptions destinées à l’autre canal du contrôleur.
Si le pilote miniport nécessite beaucoup de temps pour traiter l’interruption, il doit suivre les étapes suivantes :
- Ignorez l’interruption sur l’adaptateur HBA.
- Désactivez les interruptions sur le canal indiqué par le paramètre ChannelExtension .
- Demandez une routine worker à l’aide d’AtaPortRequestWorkerRoutine.
- Effectuez un traitement supplémentaire dans la routine worker.
- Activez les interruptions sur le canal.
La routine de travail doit effacer l’interruption sur l’adaptateur HBA avant de retourner TRUE.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | irb.h (include Irb.h) |