共用方式為


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 迷你埠執行所在的模式。 有兩種可能的模式:

模式 Description
IdeModeNormal 這是 ATA 迷你埠正常運作的標準完整功能模式。
IdeModeDump 這是 ATA 迷你埠在休眠或損毀傾印期間運作的有限記憶體模式。 在此模式中,無法使用回呼例程和登錄存取例程。

NumberOfPhysicalBreaks

指定如果 HBA 支援散佈/收集,數據緩衝區可以擁有的位址範圍之間的中斷數目上限。 換句話說,散佈/收集清單的數目減一。 根據預設,這個成員的值是IDE_UNINITIALIZED_VALUE,這表示 HBA 可以支援無限數量的實體不明確性。 如果埠驅動程式設定此成員的值,迷你埠驅動程式可以調整較低的值,但不能調整較高的值。 如果此成員IDE_UNINITIALIZED_VALUE,迷你埠驅動程序必須根據 HBA 的散佈/收集容量重設此成員。

MaximumTransferLength

指定 HBA 可在單一傳輸作業中傳輸的最大位元元數目。 根據預設,這個成員的值是IDE_UNINITIALIZED_VALUE,這表示傳輸大小上限無限制。

Reserved

保留供未來使用。 迷你埠驅動程式不得使用此欄位。

NativeModeEnabled

迷你埠驅動程式可以將這個成員設定為 TRUE ,表示控制器是在原生模式中運作。

Dma64BitAddress

迷你埠驅動程式可以將此成員設定為 TRUE ,表示支援 64 位 DMA 作業。

BusMaster

迷你埠驅動程式可以將此成員設定為 TRUE ,以指出總線主控支援。

AtaBusType

指出它是 SATA 或 PATA 控制器。

ControllerResources

提供 ATA 控制器的硬體資源。

規格需求

需求
標頭 irb.h (包含 Irb.h)