Fonction AtaPortInitializeEx (irb.h)

La bibliothèque de pilotes de port AtaPortInitializeEx ATA initialise les pilotes de port et de miniport.

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

ULONG AtaPortInitializeEx(
  [in] PVOID                     DriverObject,
  [in] PVOID                     RegistryPath,
  [in] PIDE_CONTROLLER_INTERFACE ControllerInterface
);

Paramètres

[in] DriverObject

Pointeur vers l’objet pilote miniport.

[in] RegistryPath

Contient une chaîne Unicode qui indique l’emplacement dans le Registre où sont stockées les informations de configuration du pilote miniport.

[in] ControllerInterface

Contient les points d’entrée pour les routines AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabled et AtaControllerTransferModeSelect .

Valeur retournée

AtaPortInitializeEx retourne STATUS_SUCCESS si l’opération réussit. Sinon, elle retourne un code d’erreur.

Remarques

La routine AtaPortInitializeEx initialise les structures de données clés utilisées par les pilotes de port et de miniport. Il démarre également l’initialisation des canaux du contrôleur. La séquence suivante décrit les principales actions effectuées par cette routine :

  1. Dans sa routine DriverEntry , le pilote miniport appelle la routine de bibliothèque AtaPortInitializeEx du pilote de port et lui transmet les paramètres clés suivants :
    • ControllerInterface : contient les points d’entrée pour les routines AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabled et AtaControllerTransferModeSelect .
  2. La routine AtaPortInitializeEx initialise les structures de données clés utilisées par les pilotes de port et de miniport et effectue les actions suivantes :
    1. Initialise les tables de répartition du pilote miniport.
    2. Alloue une extension pour l’objet pilote.
    3. Copie ControllerInterface dans l’extension de pilote.
    4. Une fois qu’AtaPortInitializeEx a terminé l’initialisation du pilote de port, il retourne à la routine DriverEntry du pilote miniport.
  3. Lors du démarrage du périphérique de l’adaptateur, la routine du pilote miniport AtaAdapterControl est appelée par le pilote de port avec l’action de contrôle IdeStart.
  4. Lorsque le pilote de port ATA traite une demande de démarrage de périphérique de canal, la routine de pilote miniport AtaControllerChannelEnabled est appelée pour chaque canal sur le contrôleur afin de déterminer s’il est activé.
  5. Une fois que la routine AtaControllerChannelEnabled a déterminé quels canaux sont activés, le pilote de port ATA appelle AtaChannelInitRoutine pour ce canal.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête irb.h (inclure Ata.h, Irb.h)
Bibliothèque Pciidex.lib

Voir aussi

AtaChannelInitRoutine

AtaControllerChannelEnabled

DriverEntry

IDE_CONTROLLER_CONFIGURATION