次の方法で共有


IDE_CONTROLLER_CONFIGURATION構造体 (irb.h)

IDE_CONTROLLER_CONFIGURATION構造体は、ポート ドライバーとミニポート ドライバーの間でコントローラー構成情報を渡すために使用されます。

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

構文

typedef struct _IDE_CONTROLLER_CONFIGURATION {
  USHORT                  Version;
  UCHAR                   NumberOfChannels;
  IDE_OPERATION_MODE      ControllerMode;
  UCHAR                   NumberOfPhysicalBreaks;
  ULONG                   MaximumTransferLength;
  BOOLEAN                 Reserved;
  BOOLEAN                 NativeModeEnabled;
  BOOLEAN                 Dma64BitAddress;
  BOOLEAN                 BusMaster;
  IDE_BUS_TYPE            AtaBusType;
  PIDE_MINIPORT_RESOURCES ControllerResources;
} IDE_CONTROLLER_CONFIGURATION, *PIDE_CONTROLLER_CONFIGURATION;

メンバー

Version

ポート ドライバーは、ポート ドライバーのバージョンを示すようにこのフィールドを設定します。 ポート ドライバーは、バージョンを sizeof(IDE_CONTROLLER_CONFIGURATION) に設定します。 ミニポート ドライバーは、バージョンが使用しているバージョン以上であることを確認する必要があります。

NumberOfChannels

HBA でサポートされるチャネルの数を指定します。 これは、無効になっているチャネルを含むチャネルの合計数を示します。

ControllerMode

ポート ドライバーは、ATA ミニポートにそれが実行されているモードを通知するには、このフィールドを設定します。 選択できるモードは、

モード 説明
IdeModeNormal これは、ATA ミニポートが正常に動作する標準のフル機能モードです。
IdeModeDump これは、休止状態またはクラッシュダンプ中に ATA ミニポートが動作する制限付きメモリ モードです。 コールバック ルーチンとレジストリ アクセス ルーチンは、このモードでは使用できません。

NumberOfPhysicalBreaks

HBA がスキャッター/ギャザーをサポートしている場合にデータ バッファーが持つ可能性があるアドレス範囲間の区切りの最大数を指定します。 つまり、散布図/収集リストの数から 1 を引いた数です。 既定では、このメンバーの値は IDE_UNINITIALIZED_VALUE です。これは、HBA が無制限の数の物理的な不連続をサポートできることを示します。 ポート ドライバーがこのメンバーの値を設定する場合、ミニポート ドライバーは値を小さくしても、それ以上は調整できません。 このメンバーがIDE_UNINITIALIZED_VALUEされている場合、ミニポート ドライバーは HBA の散布/収集容量に従ってこのメンバーをリセットする必要があります。

MaximumTransferLength

HBA が 1 回の転送操作で転送できる最大バイト数を指定します。 既定では、このメンバーの値はIDE_UNINITIALIZED_VALUEです。これは、無制限の最大転送サイズを示します。

Reserved

将来利用するために予約されています。 ミニポート ドライバーでは、このフィールドを使用しないでください。

NativeModeEnabled

ミニポート ドライバーは、コントローラーがネイティブ モードで動作することを示すために、このメンバーを TRUE に設定できます。

Dma64BitAddress

ミニポート ドライバーは、このメンバーを TRUE に設定して、64 ビット DMA 操作のサポートを示すことができます。

BusMaster

ミニポート ドライバーは、バスのマスタリングのサポートを示すために 、この メンバーを TRUE に設定できます。

AtaBusType

SATA コントローラーか PATA コントローラーかを示します。

ControllerResources

ATA コントローラーのハードウェア リソースを提供します。

要件

要件
Header irb.h (Irb.h を含む)