IDE_TRANSFER_MODE_PARAMETERS 구조체(irb.h)
IDE_TRANSFER_MODE_PARAMETERS 구조는 미니포트 드라이버의 AtaControllerTransferModeSelect 루틴과 함께 사용하여 채널에서 전송 모드 매개 변수를 설정합니다.
통사론
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]
표시된 디바이스 식별 데이터의 49개 단어 중 비트 11이 1로 설정된 TRUE 시기를 나타냅니다. 함수 값이 IRB_FUNCTION_ATA_IDENTIFY IDE 요청은 디바이스의 식별 데이터를 검색합니다. ATA 식별 데이터에 대한 자세한 내용은 ATA/ATAPI 사양버전 6.0의 디바이스 정보 식별 패킷 섹션을 참조하세요.
DeviceTransferModeSupported[MAX_IDE_DEVICE]
채널의 각 디바이스에 대해 지원되는 전송 모드를 나타내는 비트맵을 포함합니다. 포트 드라이버는 이 멤버를 설정합니다. 미니포트 드라이버는 포트 드라이버가 지원하지 않는 전송 모드를 선택해서는 안 됩니다. 이 멤버에 대한 자세한 내용은 설명 섹션을 참조하세요.
DeviceTransferModeCurrent[MAX_IDE_DEVICE]
채널의 각 디바이스에 대한 현재 전송 모드 설정을 나타내는 비트맵을 포함합니다. 포트 드라이버는 디바이스 식별 데이터에서 디바이스의 현재 전송 모드를 검색합니다. 이 멤버에 대한 자세한 내용은 설명 섹션을 참조하세요.
DeviceTransferModeSelected[MAX_IDE_DEVICE]
채널의 각 디바이스에 대해 선택한 전송 모드 설정을 나타내는 비트맵을 포함합니다. 미니포트 드라이버는 이 멤버를 사용하여 선택한 전송 모드를 포트 드라이버에 표시해야 합니다. 이 멤버에 대한 자세한 내용은 설명 섹션을 참조하세요.
발언
DeviceTransferModeSupported , DeviceTransferModeCurrent및 DeviceTransferModeSelected멤버 배열은 PIO 및 DMA 전송 모드의 조합을 나타내는 ULONG 비트맵 배열입니다. 비트맵은 다음과 같이 정의됩니다.
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(Irb.h 포함) |