다음을 통해 공유


EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE 콜백 함수(udecxusbdevice.h)

USB 디바이스 에뮬레이션 클래스 확장(UdeCx)은 가상 USB 3.0 디바이스의 지정된 인터페이스의 함수 상태를 변경하라는 요청을 받으면 이 콜백 함수를 호출합니다.

통사론

EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE EvtUdecxUsbDeviceSetFunctionSuspendAndWake;

NTSTATUS EvtUdecxUsbDeviceSetFunctionSuspendAndWake(
  [in] WDFDEVICE UdecxWdfDevice,
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] ULONG Interface,
  [in] UDECX_USB_DEVICE_FUNCTION_POWER FunctionPower
)
{...}

매개 변수

[in] UdecxWdfDevice

USB 디바이스가 연결된 컨트롤러를 나타내는 프레임워크 디바이스 개체에 대한 핸들입니다. 클라이언트 드라이버는 UdecxWdfDeviceAddUsbDeviceEmulation대한 이전 호출에서 이 개체를 초기화했습니다.

[in] UdecxUsbDevice

UDE 디바이스 개체에 대한 핸들입니다. 클라이언트 드라이버는 UdecxUsbDeviceCreate 이전 호출에서 이 개체를 만들었습니다.

[in] Interface

이 값은 절전 모드에서 발생하는 인터페이스의 bInterfaceNumber.

[in] FunctionPower

인터페이스가 호스트 컨트롤러에 절전 모드 해제 신호를 일시 중단하고 보낼 수 있는지 여부를 나타내는 UDECX_USB_DEVICE_FUNCTION_POWER형식 값입니다.

반환 값

작업이 성공하면 콜백 함수는 STATUS_SUCCESS 반환하거나 NT_SUCCESS(status)가 TRUE인 다른 상태 값을 반환해야 합니다.

발언

클라이언트 드라이버는 해당 구현에 대한 함수 포인터를 제공하여 UdecxUsbDeviceInitSetStateChangeCallbacks에 대한 이전 호출에서 함수를 등록했습니다.

콜백 구현에서 USB 디바이스의 클라이언트 드라이버는 작업 상태를 입력하는 단계를 수행해야 합니다.

이 이벤트 콜백 함수는 USB 3.0 이상 디바이스에 적용됩니다. UdeCx는 이 함수를 호출하여 클라이언트 드라이버에 특정 함수의 전원 상태를 변경하라는 요청을 알립니다. 또한 함수가 새 상태에서 절전 모드 해제할 수 있는지 여부를 드라이버에 알릴 수 있습니다.

전원 요청은 STATUS_PENDING 반환한 다음 나중에 실제 완료 코드로 UdecxUsbDeviceSetFunctionSuspendAndWakeComplete 호출하여 완료하여 비동기적으로 완료될 수 있습니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
대상 플랫폼 Windows
최소 KMDF 버전 1.15
헤더 udecxusbdevice.h(Udecx.h 포함)
IRQL <=DISPATCH_LEVEL

참고 항목

아키텍처: USB UDE(디바이스 에뮬레이션)

UDE 클라이언트 드라이버 작성