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.
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) |