Share via


EVT_UDECX_USB_DEVICE_D0_EXIT función de devolución de llamada (udecxusbdevice.h)

La extensión de clase de emulación de dispositivo USB (UdeCx) invoca esta función de devolución de llamada cuando obtiene una solicitud para enviar el dispositivo USB virtual a un estado de bajo consumo.

Sintaxis

EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;

NTSTATUS EvtUdecxUsbDeviceD0Exit(
  [in] WDFDEVICE UdecxWdfDevice,
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}

Parámetros

[in] UdecxWdfDevice

Identificador de un objeto de dispositivo de marco que representa el controlador al que está conectado el dispositivo USB. El controlador cliente inicializó este objeto en una llamada anterior a UdecxWdfDeviceAddUsbDeviceEmulation.

[in] UdecxUsbDevice

Identificador del objeto de dispositivo UDE. El controlador cliente creó este objeto en una llamada anterior a UdecxUsbDeviceCreate.

[in] WakeSetting

Valor de tipo UDECX_USB_DEVICE_WAKE_SETTING que indica la funcionalidad de reactivación remota del dispositivo USB.

Valor devuelto

Si la operación se realiza correctamente, la función de devolución de llamada debe devolver STATUS_SUCCESS u otro valor de estado para el que NT_SUCCESS(status) es igual a TRUE.

Comentarios

El controlador cliente registró la función en una llamada anterior a UdecxUsbDeviceInitSetStateChangeCallbacks proporcionando un puntero de función a su implementación.

En la implementación de devolución de llamada, se espera que el controlador cliente del dispositivo USB realice los pasos para enviar el dispositivo a un estado de bajo consumo. En esta función, el controlador puede iniciar su reactivación desde un estado de energía de vínculo bajo, suspensión de función o ambos. Para ello, el controlador de un dispositivo USB 2.0 debe llamar al método UdecxUsbDeviceSignalWake . Los dispositivos USB 3.0 deben usar UdecxUsbDeviceSignalFunctionWake.

La solicitud de energía se puede completar de forma asincrónica devolviendo STATUS_PENDING y, después, llamando a UdecxUsbDeviceLinkPowerExitComplete con el código de finalización real.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10
Servidor mínimo compatible Windows Server 2016
Plataforma de destino Windows
Versión mínima de KMDF 1.15
Encabezado udecxusbdevice.h (incluya Udecx.h)
IRQL <=DISPATCH_LEVEL

Consulte también

Arquitectura: emulación de dispositivos USB (UDE)

EVT_UDECX_USB_DEVICE_D0_ENTRY

UdecxUsbDeviceLinkPowerExitComplete

UdecxUsbDeviceSignalWake

Escritura de un controlador de cliente UDE