IDE_CHANNEL_INIT 콜백 함수(irb.h)
AtaChannelInitRoutine 미니포트 드라이버 루틴은 미니포트 드라이버의 채널 인터페이스를 초기화합니다.
메모
ATA 포트 드라이버 및 ATA 미니포트 드라이버 모델은 나중에 변경되거나 사용할 수 없습니다. 대신 Storport 드라이버 사용하고 storport 미니포트 드라이버 모델을 것이 좋습니다.
통사론
IDE_CHANNEL_INIT IdeChannelInit;
BOOLEAN IdeChannelInit(
PVOID ChannelExtension,
PIDE_CHANNEL_INTERFACE ChannelInterface,
PVOID InitContext
)
{...}
매개 변수
ChannelExtension
[in] 미니포트 드라이버 채널 확장에 대한 포인터입니다.
ChannelInterface
[in, out] 표시된 채널에 대한 인터페이스 정보를 포함하는 IDE_CHANNEL_INTERFACE 구조체에 대한 포인터입니다.
InitContext
[in, out] 컨트롤러 확장에 대한 포인터입니다.
반환 값
초기화에 성공하면 AtaChannelInitRoutine TRUE를 반환합니다. 초기화에 실패한 경우 FALSE를 반환합니다.
발언
채널 인터페이스를 지원하는 공급업체에서 제공하는 미니포트 드라이버는 컨트롤러의 채널을 초기화하기 위해 AtaChannelInitRoutine 루틴을 구현해야 합니다. 특히 AtaChannelInitRoutine 루틴은 IDE_CHANNEL_INTERFACE 구조의 초기화를 완료해야 합니다. 다음 시퀀스는 미니포트 드라이버와 포트 드라이버가 상호 작용하여 채널을 초기화하는 방법을 설명합니다.
DriverEntry 루틴에서 미니포트 드라이버는 포트 드라이버의 AtaPortInitializeEx 라이브러리 루틴을 호출하여 컨트롤러 및 미니포트 드라이버의 초기화를 시작합니다.
미니포트 드라이버가 채널 인터페이스를 지원하는 경우 DriverEntry 루틴은 IDE_CONTROLLER_INTERFACEAtaChannelInitRoutine 멤버를 초기화하여 미니포트 드라이버의 AtaChannelInitRoutine 루틴을 가리킵니다.
포트 드라이버는 제어 작업 IdeStart를 사용하여 AtaAdapterControl 루틴을 호출합니다. AtaChannelInitRoutineAtaAdapterControlIdeStart 작업을 처리할 때 AtaAdapterControl 루틴에서 반환되는 ControllerConfiguration 구조에 지정된 모든 NumberOfChannels에 대해 한 번 호출됩니다.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | 바탕 화면 |
헤더 | irb.h(Irb.h 포함) |