estrutura IDE_TRANSFER_MODE_PARAMETERS (irb.h)
A estrutura IDE_TRANSFER_MODE_PARAMETERS é usada em conjunto com a rotina AtaControllerTransferModeSelect do driver de miniport para definir os parâmetros do modo de transferência em um canal.
Sintaxe
typedef struct _IDE_TRANSFER_MODE_PARAMETERS {
UCHAR ChannelNumber;
IDE_DEVICE_TYPE DeviceType[MAX_IDE_DEVICE];
BOOLEAN IoReadySupported[MAX_IDE_DEVICE];
ULONG DeviceTransferModeSupported[MAX_IDE_DEVICE];
ULONG DeviceTransferModeCurrent[MAX_IDE_DEVICE];
ULONG DeviceTransferModeSelected[MAX_IDE_DEVICE];
} IDE_TRANSFER_MODE_PARAMETERS, *PIDE_TRANSFER_MODE_PARAMETERS;
Membros
ChannelNumber
Indica o número do canal cujos parâmetros de modo devem ser definidos.
DeviceType[MAX_IDE_DEVICE]
Contém um valor de enumeração do tipo IDE_DEVICE_TYPE que indica o tipo de dispositivo. O driver de miniporte não deverá selecionar um modo de transferência se o tipo de dispositivo for DeviceNotExist.
IoReadySupported[MAX_IDE_DEVICE]
Indica quando TRUE o bit 11 da palavra 49 dos dados de identificação do dispositivo indicado está definido como 1. Uma solicitação IDE com um valor de função de IRB_FUNCTION_ATA_IDENTIFY recuperará os dados de identificação de um dispositivo. Para obter mais informações sobre a identificação de dados do ATA, consulte as seções no pacote Identificar informações do dispositivo na versão 6.0 da especificação ATA/ATAPI.
DeviceTransferModeSupported[MAX_IDE_DEVICE]
Contém um bitmap que indica os modos de transferência com suporte para cada um dos dispositivos no canal. O driver de porta define esse membro. O driver de miniporte não deve selecionar um modo de transferência que o driver de porta não dá suporte. Para obter mais informações sobre esse membro, consulte a seção Comentários .
DeviceTransferModeCurrent[MAX_IDE_DEVICE]
Contém um bitmap que indica as configurações atuais do modo de transferência para cada um dos dispositivos no canal. O driver de porta recupera o modo de transferência atual dos dispositivos de seus dados de identificação do dispositivo. Para obter mais informações sobre esse membro, consulte a seção Comentários .
DeviceTransferModeSelected[MAX_IDE_DEVICE]
Contém um bitmap que indica as configurações de modo de transferência selecionadas para cada um dos dispositivos no canal. O driver de miniporte deve usar esse membro para indicar ao driver de porta quais modos de transferência ele seleciona. Para obter mais informações sobre esse membro, consulte a seção Comentários .
Comentários
As matrizes de membros DeviceTransferModeSupported, DeviceTransferModeCurrent e DeviceTransferModeSelected são matrizes de bitmaps ULONG que indicam combinações de modos de transferência PIO e DMA. Os bitmaps são definidos da seguinte maneira:
Modos PIO
#define PIO_MODE0 (1 << 0)
#define PIO_MODE1 (1 << 1)
#define PIO_MODE2 (1 << 2)
#define PIO_MODE3 (1 << 3)
#define PIO_MODE4 (1 << 4)
// Single-word DMA Modes
#define SWDMA_MODE0 (1 << 5)
#define SWDMA_MODE1 (1 << 6)
#define SWDMA_MODE2 (1 << 7)
// Multi-word DMA Modes
#define MWDMA_MODE0 (1 << 8)
#define MWDMA_MODE1 (1 << 9)
#define MWDMA_MODE2 (1 << 10)
// Ultra DMA Modes
#define UDMA_MODE0 (1 << 11)
#define UDMA_MODE1 (1 << 12)
#define UDMA_MODE2 (1 << 13)
#define UDMA_MODE3 (1 << 14)
#define UDMA_MODE4 (1 << 15)
#define UDMA_MODE5 (1 << 16)
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | irb.h (inclua Irb.h) |