estructura IDE_CONTROLLER_INTERFACE (irb.h)

La estructura IDE_CONTROLLER_INTERFACE se usa para pasar información de configuración del controlador entre el controlador de puerto y el controlador de minipuerto.

Nota Los modelos de controlador de puerto ATA y controlador de minipuerto de ATA pueden modificarse o no estar disponibles en el futuro. En su lugar, se recomienda usar los modelos del controlador Storport y del controlador storport miniport .
 

Sintaxis

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;

Miembros

Version

El controlador de puerto establece este campo para indicar la versión del controlador de puerto. El controlador de puerto establece la versión en sizeof(IDE_CONTROLLER_INTERFACE). El controlador de minipuerto debe comprobar que la versión es mayor o igual que la que está usando.

Reserved

Reservado para uso futuro. El controlador de minipuerto no usará este campo.

ControllerExtensionSize

Especifica el tamaño en bytes requerido por un controlador de minipuerto para su extensión de dispositivo controlador.

ChannelExtensionSize

Especifica el tamaño en bytes requerido por un controlador de minipuerto para su extensión de dispositivo por canal.

AlignmentMask

Contiene una máscara que indica las restricciones de alineación para los búferes requeridos por el HBA para las operaciones de transferencia. Los valores de máscara válidos también están restringidos por características de los administradores de memoria en diferentes versiones de Windows. En Windows 2000 y Windows XP, los valores de máscara válidos son 0 (alineados por bytes), 1 (alineados con palabras), 3 (alineados con DWORD) y 7 (doble alineado con DWORD). El controlador de minipuerto debe establecer esta máscara si el HBA admite dispersión y recopilación.

AtaChannelInitRoutine

Puntero a la rutina AtaChannelInitRoutine del miniporte. El minipuerto solo debe establecer este punto de entrada si admite la interfaz de canal.

AtaControllerChannelEnabled

Puntero a la rutina AtaControllerChannelEnabled del miniporte. Se trata de un punto de entrada opcional.

AtaControllerTransferModeSelect

Puntero a la rutina AtaControllerTransferModeSelect del miniporte. Se trata de un punto de entrada opcional.

AtaAdapterControl

Puntero a la rutina AtaControllerAdapterControl del miniporte. Se trata de un punto de entrada necesario.

Requisitos

Requisito Valor
Header irb.h (incluir Irb.h)