EVT_UCX_USBDEVICE_DISABLE 콜백 함수(ucxusbdevice.h)

UCX가 디바이스 및 기본 엔드포인트와 연결된 컨트롤러 리소스를 릴리스하기 위해 호출하는 클라이언트 드라이버의 구현입니다.

구문

EVT_UCX_USBDEVICE_DISABLE EvtUcxUsbdeviceDisable;

void EvtUcxUsbdeviceDisable(
  [in] UCXCONTROLLER UcxController,
  [in] WDFREQUEST Request
)
{...}

매개 변수

[in] UcxController

UcxControllerCreate 메서드에 대한 이전 호출에서 클라이언트 드라이버가 받은 UCX 컨트롤러에 대한 핸들입니다.

[in] Request

USBDEVICE_DISABLE 형식의 구조체입니다.

반환 값

없음

설명

UCX 클라이언트 드라이버는 UcxUsbDeviceCreate 메서드를 호출하여 이 콜백 함수를 UCX(USB 호스트 컨트롤러 확장)에 등록합니다.

클라이언트 드라이버가 컨트롤러 리소스를 해제하면 WDFREQUEST가 완료됩니다. 완료 후 UCX가 이 USB 디바이스를 참조하는 호출하는 유일한 콜백 함수는 EVT_UCX_USBDEVICE_ENABLE.

디바이스가 비활성화되어 있는 동안 UCX는 디바이스에 대한 전송을 예약하지 않습니다.

디바이스를 원하는 상태로 전환하기 위해 호스트 컨트롤러 드라이버는 하드웨어와 통신하여 요청을 완료합니다.

클라이언트 드라이버는 요청에서 완료 상태 반환합니다. 드라이버는 WDFREQUEST를 비동기적으로 완료할 수 있습니다.

예제

VOID
UsbDevice_EvtUcxUsbDeviceDisable(
    UCXCONTROLLER      UcxController,
    WDFREQUEST         Request
)


{
    UNREFERENCED_PARAMETER(UcxController);

    DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceDisable");

    WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
    WdfRequestGetParameters(WdfRequest, &wdfRequestParams);
    usbDeviceDisable = (PUSBDEVICE_DISABLE)wdfRequestParams.Parameters.Others.Arg1;
    ...

    WdfRequestComplete(Request, STATUS_SUCCESS);
}

요구 사항

요구 사항
대상 플랫폼 Windows
최소 KMDF 버전 1.0
최소 UMDF 버전 2.0
머리글 ucxusbdevice.h(Ucxclass.h 포함)
IRQL DISPATCH_LEVEL

추가 정보

UcxUsbDeviceCreate