EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE funzione di callback (udecxusbdevice.h)
L'estensione della classe di emulazione del dispositivo USB (UdeCx) richiama questa funzione di callback quando ottiene una richiesta per modificare lo stato della funzione dell'interfaccia specificata del dispositivo USB 3.0 virtuale.
Sintassi
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
)
{...}
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] Interface
Questo valore è il valore bInterfaceNumber dell'interfaccia che si sta svegliando.
[in] FunctionPower
Valore di tipo UDECX_USB_DEVICE_FUNCTION_POWER che indica se l'interfaccia può sospendere e inviare il segnale di riattivazione al controller host.
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.
Commenti
Il driver client ha registrato la funzione in una chiamata precedente a UdecxUsbDeviceInitSetStateChangeCallbacks fornendo un puntatore a funzione alla relativa implementazione.
Nell'implementazione del callback, è previsto che il driver client per il dispositivo USB esegua i passaggi per entrare nello stato di lavoro.
Questa funzione di callback degli eventi si applica ai dispositivi USB 3.0+. UdeCx richiama questa funzione per notificare al driver client di una richiesta di modificare lo stato di alimentazione di una determinata funzione. Informa inoltre il driver se la funzione può riattivarsi dal nuovo stato.
La richiesta di alimentazione può essere completata in modo asincrono restituendo STATUS_PENDING e successivamente completandola chiamando UdecxUsbDeviceSetFunctionSuspendAndWakeComplete con il codice di completamento effettivo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Server minimo supportato | Windows Server 2016 |
Piattaforma di destinazione | Windows |
Versione KMDF minima | 1.15 |
Intestazione | udecxusbdevice.h (include Udecx.h) |
IRQL | <=DISPATCH_LEVEL |