Partager via


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).

Note Les modèles de pilote de port ATA et de pilote miniport ATA peuvent être modifiés ou indisponibles à l’avenir. Au lieu de cela, nous vous recommandons d’utiliser les modèles de pilote Storport et de pilote Miniport Storport .
 

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)

Voir aussi

AtaPortControllerSyncRoutine