Freigeben über


AtaPortInitializeEx-Funktion (irb.h)

Die AtaPortInitializeEx ATA-Porttreiberbibliothek initialisiert die Port- und Miniporttreiber.

Hinweis Der ATA-Porttreiber und die ATA Miniport-Treibermodelle können in Zukunft geändert oder nicht verfügbar sein. Stattdessen empfehlen wir die Verwendung des Storport-Treibers und Storport Miniport Treibermodelle.
 

Syntax

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

Parameter

[in] DriverObject

Ein Zeiger auf das Miniporttreiberobjekt.

[in] RegistryPath

Enthält eine Unicode-Zeichenfolge, die den Speicherort in der Registrierung angibt, an dem die Informationen zur Miniporttreiberkonfiguration gespeichert sind.

[in] ControllerInterface

Enthält die Einstiegspunkte für die AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabledund AtaControllerTransferModeSelect Routinen.

Rückgabewert

AtaPortInitializeEx gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls wird ein Fehlercode zurückgegeben.

Bemerkungen

Die AtaPortInitializeEx Routine initialisiert wichtige Datenstrukturen, die von den Port- und Miniporttreibern verwendet werden. Außerdem wird die Initialisierung der Kanäle des Controllers gestartet. Die folgende Sequenz beschreibt die wichtigsten Aktionen, die von dieser Routine ausgeführt werden:

  1. Während der DriverEntry Routine ruft der Miniporttreiber die AtaPortInitializeEx Bibliotheksroutine auf und übergibt ihn die folgenden Schlüsselparameter:
    • ControllerInterface: Enthält die Einstiegspunkte für die AtaAdapterControl, AtaChannelInitRoutine, AtaControllerChannelEnabledund AtaControllerTransferModeSelect Routinen.
  2. Die AtaPortInitializeEx Routine initialisiert wichtige Datenstrukturen, die von den Port- und Miniporttreibern verwendet werden, und führt die folgenden Aktionen aus:
    1. Initialisiert die Verteilertabellen des Miniporttreibers.
    2. Weist eine Erweiterung für das Treiberobjekt zu.
    3. Kopiert ControllerInterface in die Treibererweiterung.
    4. Nachdem AtaPortInitializeEx die Initialisierung des Porttreibers abgeschlossen hat, kehrt sie zur DriverEntry Routine des Miniporttreibers zurück.
  3. Beim Starten des Adaptergeräts wird die Miniporttreiberroutine AtaAdapterControl vom Porttreiber mit Steuerungsaktion IdeStartaufgerufen.
  4. Wenn der ATA-Porttreiber eine Startanforderung eines Kanalgeräts verarbeitet, wird die Miniporttreiberroutine AtaControllerChannelEnabled für jeden Kanal auf dem Controller aufgerufen, um festzustellen, ob er aktiviert ist.
  5. Nachdem die AtaControllerChannelEnabled Routine bestimmt, welche Kanäle aktiviert sind, ruft der ATA-Porttreiber AtaChannelInitRoutine für diesen Kanal auf.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- irb.h (include Ata.h, Irb.h)
Library Pciidex.lib

Siehe auch

AtaChannelInitRoutine

AtaControllerChannelEnabled

DriverEntry-

IDE_CONTROLLER_CONFIGURATION