Поделиться через


структура IDE_TRANSFER_MODE_PARAMETERS (irb.h)

Структура IDE_TRANSFER_MODE_PARAMETERS используется в сочетании с драйвера минипорта ataControllerTransferModeSelect, чтобы задать параметры режима передачи в канале.

Примечание В будущем модели драйверов портов ATA и мини-порта ATA могут быть изменены или недоступны. Вместо этого мы рекомендуем использовать драйвера Storport и минипорта Storport модели драйверов.
 

Синтаксис

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;

Члены

ChannelNumber

Указывает номер канала, параметры режима которого должны быть заданы.

DeviceType[MAX_IDE_DEVICE]

Содержит значение перечисления типа IDE_DEVICE_TYPE, указывающее тип устройства. Минипорт-драйвер не должен выбирать режим передачи, если тип устройства DeviceNotExist.

IoReadySupported[MAX_IDE_DEVICE]

Указывает, когда TRUE, что бит 11 слова 49 идентификации указанного устройства имеет значение 1. Запрос интегрированной среды разработки со значением функции IRB_FUNCTION_ATA_IDENTIFY извлекает данные идентификации устройства. Дополнительные сведения об идентификации данных ATA см. в разделах пакета сведений об идентификации устройства в спецификации ATA/ATAPI версии 6.0.

DeviceTransferModeSupported[MAX_IDE_DEVICE]

Содержит растровое изображение, указывающее поддерживаемые режимы передачи для каждого устройства на канале. Драйвер порта задает этот элемент. Драйвер минипорта не должен выбирать режим передачи, который драйвер порта не поддерживает. Дополнительные сведения об этом члене см. в разделе Примечания.

DeviceTransferModeCurrent[MAX_IDE_DEVICE]

Содержит растровое изображение, указывающее текущие параметры режима передачи для каждого устройства на канале. Драйвер порта извлекает текущий режим передачи устройств из их идентификации данных устройства. Дополнительные сведения об этом члене см. в разделе Примечания.

DeviceTransferModeSelected[MAX_IDE_DEVICE]

Содержит растровое изображение, указывающее параметры выбранного режима передачи для каждого устройства на канале. Драйвер минипорта должен использовать этот элемент, чтобы указать драйверу порта, который он выбирает режимы передачи. Дополнительные сведения об этом члене см. в разделе Примечания.

Замечания

Массивы элементов DeviceTransferModeSupported, DeviceTransferModeCurrentи DeviceTransferModeSelected представляют собой массивы растровых карт ULONG, указывающие на сочетания режимов передачи PIO и DMA. Растровые изображения определяются следующим образом:

Режимы 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)

Требования

Требование Ценность
заголовка irb.h (include Irb.h)

См. также

AtaControllerTransferModeSelect

IDE_DEVICE_TYPE