Condividi tramite


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 di 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 bInterfaceNumber dell'interfaccia che si sta riattivando.

[in] FunctionPower

Valore UDECX_USB_DEVICE_FUNCTION_POWER-type che indica se l'interfaccia può sospendere e inviare 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.

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 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 quindi completandola successivamente chiamando UdecxUsbDeviceSetFunctionSuspendAndWakeComplete 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)

Scrivere un driver client UDE