estrutura IDE_CONTROLLER_INTERFACE (irb.h)

A estrutura IDE_CONTROLLER_INTERFACE é usada para passar informações de configuração do controlador entre o driver de porta e o driver de miniporte.

Nota Os modelos de driver de porta do ATA e do driver de miniporto do ATA podem ser alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar os modelos de driver do Storport e do driver de miniporto storport .
 

Sintaxe

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;

Membros

Version

O driver de porta define esse campo para indicar a versão do driver de porta. O driver de porta define a versão como sizeof(IDE_CONTROLLER_INTERFACE). O driver de miniporte deve verificar se a versão é maior ou igual à que está usando.

Reserved

Reservado para uso futuro. O driver de miniporte não deve usar esse campo.

ControllerExtensionSize

Especifica o tamanho em bytes exigido por um driver de miniporto para sua extensão de dispositivo controlador.

ChannelExtensionSize

Especifica o tamanho em bytes exigido por um driver de miniporto para sua extensão de dispositivo por canal.

AlignmentMask

Contém uma máscara que indica as restrições de alinhamento para buffers exigidos pelo HBA para operações de transferência. Os valores de máscara válidos também são restritos por características dos gerenciadores de memória em diferentes versões do Windows. Em Windows 2000 e Windows XP, os valores de máscara válidos são 0 (alinhados a bytes), 1 (alinhado a palavras), 3 (alinhado a DWORD) e 7 (alinhados a DWORD duplo). O driver de miniporte deverá definir essa máscara se o HBA der suporte a dispersão/coleta.

AtaChannelInitRoutine

Ponteiro para a rotina AtaChannelInitRoutine do miniport. O miniporto só precisará definir esse ponto de entrada se ele der suporte à Interface de Canal.

AtaControllerChannelEnabled

Ponteiro para a rotina AtaControllerChannelEnabled do miniport. Esse é um ponto de entrada opcional.

AtaControllerTransferModeSelect

Ponteiro para a rotina AtaControllerTransferModeSelect do miniport. Esse é um ponto de entrada opcional.

AtaAdapterControl

Ponteiro para a rotina AtaControllerAdapterControl do miniport. Esse é um ponto de entrada necessário.

Requisitos

Requisito Valor
Cabeçalho irb.h (inclua Irb.h)