IDE_CONTROLLER_INTERFACE構造体は、ポート ドライバーとミニポート ドライバーの間でコントローラー構成情報を渡すために使用されます。
構文
typedef struct _IDE_CONTROLLER_INTERFACE {
USHORT Version;
USHORT Reserved;
ULONG ControllerExtensionSize;
ULONG ChannelExtensionSize;
ULONG AlignmentMask;
IDE_CHANNEL_INIT AtaChannelInitRoutine;
IDE_CHANNEL_ENABLED AtaControllerChannelEnabled;
IDE_TRANSFER_MODE_SELECT AtaControllerTransferModeSelect;
IDE_ADAPTER_CONTROL AtaAdapterControl;
} IDE_CONTROLLER_INTERFACE, *PIDE_CONTROLLER_INTERFACE;
メンバーズ
Version
ポート ドライバーは、ポート ドライバーのバージョンを示すようにこのフィールドを設定します。 ポート ドライバーは、バージョンを sizeof(IDE_CONTROLLER_INTERFACE) に設定します。 ミニポート ドライバーは、バージョンが使用しているバージョン以上であることを確認する必要があります。
Reserved
将来の使用のために予約されています。 ミニポート ドライバーは、このフィールドを使用しないでください。
ControllerExtensionSize
ミニポート ドライバーのコントローラー デバイス拡張機能に必要なサイズ (バイト単位) を指定します。
ChannelExtensionSize
ミニポート ドライバーのチャネルごとのデバイス拡張機能に必要なバイト単位のサイズを指定します。
AlignmentMask
HBA で転送操作に必要なバッファーのアラインメント制限を示すマスクが含まれています。 有効なマスク値は、Windows の異なるバージョンのメモリ マネージャーの特性によっても制限されます。 Windows 2000 および Windows XP では、有効なマスク値は 0 (バイトアライン)、1 (ワードアライン)、3 (DWORD アライン)、7 (ダブル DWORD アライン) です。 ミニポート ドライバーは、HBA が散布図/収集をサポートしている場合は、このマスクを設定する必要があります。
AtaChannelInitRoutine
ミニポートの AtaChannelInitRoutine ルーチンへのポインター。 ミニポートは、チャネル インターフェイスをサポートしている場合にのみ、このエントリ ポイントを設定する必要があります。
AtaControllerChannelEnabled
ミニポートの AtaControllerChannelEnabled ルーチンへのポインター。 これは省略可能なエントリ ポイントです。
AtaControllerTransferModeSelect
ミニポートの AtaControllerTransferModeSelect ルーチンへのポインター。 これは省略可能なエントリ ポイントです。
AtaAdapterControl
ミニポートの AtaControllerAdapterControl ルーチンへのポインター。 これは必須のエントリ ポイントです。
必要条件
| 要件 | 価値 |
|---|---|
| ヘッダー | irb.h (Irb.h を含む) |