EVT_UDECX_USB_DEVICE_D0_EXIT funzione di callback (udecxusbdevice.h)
L'estensione della classe di emulazione del dispositivo USB (UdeCx) richiama questa funzione di callback quando ottiene una richiesta di inviare il dispositivo USB virtuale a uno stato di basso consumo.
Sintassi
EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;
NTSTATUS EvtUdecxUsbDeviceD0Exit(
[in] WDFDEVICE UdecxWdfDevice,
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}
Parametri
[in] UdecxWdfDevice
Handle per un oggetto dispositivo framework che rappresenta il controller a cui è collegato il dispositivo USB. Il driver client ha inizializzato questo oggetto in una chiamata precedente a UdecxWdfDeviceAddUsbDeviceEmulation.
[in] UdecxUsbDevice
Handle per l'oggetto dispositivo UDE. Il driver client ha creato questo oggetto in una chiamata precedente a UdecxUsbDeviceCreate.
[in] WakeSetting
Valore UDECX_USB_DEVICE_WAKE_SETTING-type che indica la funzionalità di riattivazione remota del dispositivo USB.
Valore restituito
Se l'operazione ha esito positivo, la funzione di callback deve restituire STATUS_SUCCESS o un altro valore di stato per cui NT_SUCCESS(status) è TRUE.
Osservazioni
Il driver client ha registrato la funzione in una chiamata precedente a UdecxUsbDeviceInitSetStateChangeCallbacks fornendo un puntatore di funzione alla relativa implementazione.
Nell'implementazione del callback, è previsto che il driver client per il dispositivo USB esegua i passaggi per inviare il dispositivo a uno stato di basso consumo. In questa funzione, il driver può avviare la riattivazione da uno stato di alimentazione a basso collegamento, una sospensione della funzione o entrambi. A tale scopo, il driver per un dispositivo USB 2.0 deve chiamare il metodo UdecxUsbDeviceSignalWake. I dispositivi USB 3.0 devono usare UdecxUsbDeviceSignalFunctionWake.
La richiesta di alimentazione può essere completata in modo asincrono restituendo STATUS_PENDING e quindi chiamando successivamente UdecxUsbDeviceLinkPowerExitComplete con il codice di completamento effettivo.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 10 |
server minimo supportato | Windows Server 2016 |
piattaforma di destinazione | Finestre |
versione minima di KMDF | 1.15 |
intestazione | udecxusbdevice.h (include Udecx.h) |
IRQL | <=DISPATCH_LEVEL |
Vedere anche
architettura : UDE (USB Device Emulation)