次の方法で共有


AtaPortInitializeEx 関数 (irb.h)

AtaPortInitializeEx ATA ポート ドライバー ライブラリ ルーチンは、ポートとミニポート ドライバーを初期化します。

ATA ポート ドライバーと ATA ミニポート ドライバー モデルは、将来変更されたり使用できなくなったりする可能性があります。 代わりに、Storport ドライバー を使用し、Storport ミニポート ドライバー モデル することをお勧めします。
 

構文

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

パラメーター

[in] DriverObject

ミニポート ドライバー オブジェクトへのポインター。

[in] RegistryPath

ミニポート ドライバーの構成情報が格納されているレジストリ内の場所を示す Unicode 文字列が含まれています。

[in] ControllerInterface

AtaAdapterControlAtaChannelInitRoutineAtaControllerChannelEnabled、および AtaControllerTransferModeSelect ルーチンのエントリ ポイントを格納します。

戻り値

AtaPortInitializeEx は、操作が成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、エラー コードが返されます。

備考

AtaPortInitializeEx ルーチンは、ポートとミニポート ドライバーによって使用されるキー データ構造を初期化します。 また、コントローラーのチャネルの初期化も開始します。 次のシーケンスでは、このルーチンによって実行される主なアクションについて説明します。

  1. DriverEntry ルーチンでは、ミニポート ドライバーは、ポート ドライバーの AtaPortInitializeEx ライブラリ ルーチンを呼び出し、次のキー パラメーターを渡します。
    • ControllerInterface: AtaAdapterControlAtaChannelInitRoutineAtaControllerChannelEnabled、および AtaControllerTransferModeSelect ルーチンのエントリ ポイントが含まれます。
  2. AtaPortInitializeEx ルーチンは、ポートとミニポート ドライバーによって使用されるキー データ構造を初期化し、次のアクションを実行します。
    1. ミニポート ドライバーのディスパッチ テーブルを初期化します。
    2. ドライバー オブジェクトの拡張機能を割り当てます。
    3. ControllerInterface をドライバー拡張機能にコピーします。
    4. AtaPortInitializeEx ポート ドライバーの初期化が完了すると、ミニポート ドライバーの DriverEntry ルーチンに戻ります。
  3. アダプター デバイスの起動中に、ミニポート ドライバー ルーチン AtaAdapterControl は、IdeStart 制御アクションを持つポート ドライバーによって呼び出されます。
  4. ATA ポート ドライバーがチャネル デバイスの開始要求を処理している場合、ミニポート ドライバー ルーチン AtaControllerChannelEnabled は、有効になっているかどうかを判断するために、コントローラー上の各チャネルに対して呼び出されます。
  5. AtaControllerChannelEnabled ルーチンが有効になっているチャネルを決定した後、ATA ポート ドライバーは、このチャネル AtaChannelInitRoutine を呼び出します。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー irb.h (Ata.h、Irb.h を含む)
ライブラリ Pciidex.lib

関連項目

AtaChannelInitRoutine

AtaControllerChannelEnabled

DriverEntry

IDE_CONTROLLER_CONFIGURATION