EVT_UDECX_USB_DEVICE_D0_ENTRY callback function (udecxusbdevice.h)

The USB device emulation class extension (UdeCx) invokes this callback function when it gets a request to bring the virtual USB device out of a low power state to working state.

Syntax

EVT_UDECX_USB_DEVICE_D0_ENTRY EvtUdecxUsbDeviceD0Entry;

NTSTATUS EvtUdecxUsbDeviceD0Entry(
  [in] WDFDEVICE UdecxWdfDevice,
  [in] UDECXUSBDEVICE UdecxUsbDevice
)
{...}

Parameters

[in] UdecxWdfDevice

A handle to a framework device object that represents the controller to which the USB device is attached. The client driver initialized this object in a previous call to UdecxWdfDeviceAddUsbDeviceEmulation.

[in] UdecxUsbDevice

A handle to UDE device object. The client driver created this object in a previous call to UdecxUsbDeviceCreate.

Return value

If the operation is successful, the callback function must return STATUS_SUCCESS, or another status value for which NT_SUCCESS(status) equals TRUE.

Remarks

The client driver registered the function in a previous call to UdecxUsbDeviceInitSetStateChangeCallbacks by supplying a function pointer to its implementation.

In the callback implementation, the client driver for the USB device is expected to perform steps to enter working state.

The power request may be completed asynchronously by returning STATUS_PENDING, and then later completing it by calling UdecxUsbDeviceLinkPowerExitComplete with the actual completion code.

Requirements

Requirement Value
Minimum supported client Windows 10
Minimum supported server Windows Server 2016
Target Platform Windows
Minimum KMDF version 1.15
Header udecxusbdevice.h (include Udecx.h)
IRQL <=DISPATCH_LEVEL

See also

Architecture: USB Device Emulation (UDE)

EVT_UDECX_USB_DEVICE_D0_EXIT

UdecxUsbDeviceLinkPowerExitComplete

UdecxUsbDeviceSignalWake

Write a UDE client driver