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)