Fonction AtaPortRequestSynchronizedRoutine (irb.h)
La routine AtaPortRequestSynchronizedRoutine est utilisée par le pilote miniport pour demander la synchronisation avec la routine de service d’interruption (ISR).
Syntaxe
BOOLEAN AtaPortRequestSynchronizedRoutine(
[in] PVOID ChannelExtension,
IDE_HW_DPC CallBackRoutine
);
Paramètres
[in] ChannelExtension
Pointeur vers l’extension de canal.
CallBackRoutine
Pointeur vers la routine à appeler.
Valeur de retour
None
Remarques
Cette routine est généralement utilisée par les pilotes miniport qui définissent le membre SyncWithIsr de la structure IDE_CHANNEL_CONFIGURATION sur FALSE. Lorsque SyncWithIsr a la valeur FALSE, le pilote miniport doit utiliser la routine AtaPortRequestSynchronizedRoutine pour garantir un accès synchronisé aux structures de données modifiées dans l’ISR.
Le pointeur vers l’extension de canal stockée dans ChannelExtension est passé à la routine worker lorsqu’elle est appelée.
Lorsque le pilote de port appelle la routine pointée par SynchronizedRoutine, il passe le pointeur vers l’extension de canal stockée dans ChannelExtension.
Le pointeur de la fonction SynchronizedRoutine est déclaré dans Irb.h comme suit :
typedef
VOID
(*IDE_HW_DPC) (
IN PVOID ChannelExtension
);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | irb.h (inclure Ata.h, Irb.h) |