IDE_CHANNEL_INIT コールバック関数 (irb.h)

AtaChannelInitRoutine ミニポート ドライバー ルーチンは、ミニポート ドライバーのチャネル インターフェイスを初期化します。

注意

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

構文

IDE_CHANNEL_INIT IdeChannelInit;

BOOLEAN IdeChannelInit(
  PVOID ChannelExtension,
  PIDE_CHANNEL_INTERFACE ChannelInterface,
  PVOID InitContext
)
{...}

パラメーター

ChannelExtension

[入力]ミニポート ドライバー チャネル拡張機能へのポインター。

ChannelInterface

[入力、出力]指定されたチャネルのインターフェイス情報を含む IDE_CHANNEL_INTERFACE 構造体へのポインター。

InitContext

[入力、出力]コントローラー拡張機能へのポインター。

戻り値

初期化が成功した場合、AtaChannelInitRoutine は TRUE を返します。 初期化に失敗した場合は FALSE を返します。

注釈

チャネル インターフェイスをサポートするベンダー提供のミニポート ドライバーは、コントローラーのチャネルを初期化するために AtaChannelInitRoutine ルーチンを実装する必要があります。 特に、 AtaChannelInitRoutine ルーチンは 、IDE_CHANNEL_INTERFACE 構造体の初期化を完了する必要があります。 次のシーケンスでは、ミニポート ドライバーとポート ドライバーが対話してチャネルを初期化する方法について説明します。

  1. DriverEntry ルーチンでは、ミニポート ドライバーは、ポート ドライバーの AtaPortInitializeEx ライブラリ ルーチンを呼び出して、コントローラーとミニポート ドライバーの初期化を起動します。

  2. ミニポート ドライバーがチャネル インターフェイスをサポートしている場合、 DriverEntry ルーチンは、ミニポート ドライバーの AtaChannelInitRoutine ルーチンを指すために 、IDE_CONTROLLER_INTERFACEAtaChannelInitRoutine メンバーを初期化する必要があります。

  3. ポート ドライバーは、コントロール アクション IdeStart を使用して AtaAdapterControl ルーチンを呼び出します。 AtaChannelInitRoutine は、AtaAdapterControl が IdeStart アクションを処理するときに AtaAdapterControl ルーチンによって返される ControllerConfiguration 構造体で指定された NumberOfChannels ごとに 1 回呼び出されます。

要件

要件
対象プラットフォーム デスクトップ
Header irb.h (Irb.h を含む)

こちらもご覧ください

AtaPortInitializeEx

IDE_CHANNEL_INTERFACE

IDE_CONTROLLER_INTERFACE