EVT_UCX_USBDEVICE_ENABLE 콜백 함수(ucxusbdevice.h)
UCX가 디바이스 및 해당 기본 제어 엔드포인트에 대한 프로그램 정보를 컨트롤러에 호출하는 클라이언트 드라이버의 구현입니다.
구문
EVT_UCX_USBDEVICE_ENABLE EvtUcxUsbdeviceEnable;
void EvtUcxUsbdeviceEnable(
[in] UCXCONTROLLER UcxController,
[in] WDFREQUEST Request
)
{...}
매개 변수
[in] UcxController
UcxControllerCreate 메서드에 대한 이전 호출에서 클라이언트 드라이버가 받은 UCX 컨트롤러에 대한 핸들입니다.
[in] Request
형식 USBDEVICE_ENABLE 구조체입니다.
반환 값
없음
설명
UCX 클라이언트 드라이버는 UcxUsbDeviceCreate 메서드를 호출하여 이 콜백 함수를 UCX(USB 호스트 컨트롤러 확장)에 등록합니다.
디바이스를 원하는 상태로 전환하기 위해 호스트 컨트롤러 드라이버는 하드웨어와 통신하여 요청을 완료합니다.
이 콜백 함수에서 클라이언트 드라이버는 USB 디바이스의 기본 제어 엔드포인트에서 전송을 수락하고 예약하도록 컨트롤러를 준비합니다.
드라이버가 완료되면 WDFREQUEST를 완료합니다.
클라이언트 드라이버는 요청에서 완료 상태 반환합니다. 드라이버는 WDFREQUEST를 비동기적으로 완료할 수 있습니다.
예제
VOID
UsbDevice_EvtUcxUsbDeviceEnable(
UCXCONTROLLER UcxController,
WDFREQUEST Request
)
{
UNREFERENCED_PARAMETER(UcxController);
DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceEnable");
WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
WdfRequestGetParameters(WdfRequest, &wdfRequestParams);
usbDeviceEnable = (PUSBDEVICE_ENABLE)wdfRequestParams.Parameters.Others.Arg1;
...
WdfRequestComplete(Request, STATUS_SUCCESS);
}
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
최소 KMDF 버전 | 1.0 |
최소 UMDF 버전 | 2.0 |
머리글 | ucxusbdevice.h(Ucxclass.h 포함) |
IRQL | DISPATCH_LEVEL |