IDE_CONTROLLER_INTERFACE 结构 (irb.h)

IDE_CONTROLLER_INTERFACE结构用于在端口驱动程序和微型端口驱动程序之间传递控制器配置信息。

注意 ATA 端口驱动程序和 ATA 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序Storport 微型端口 驱动程序模型。
 

语法

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 例程的指针。 这是必需的入口点。

要求

要求
Header irb.h (包括 Irb.h)