EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE Rückruffunktion (udecxusbdevice.h)
Die USB-Geräteemulationsklassenerweiterung (UdeCx) ruft diese Rückruffunktion auf, wenn sie eine Anforderung erhält, den Funktionsstatus der angegebenen Schnittstelle des virtuellen USB 3.0-Geräts zu ändern.
Syntax
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
)
{...}
Parameter
[in] UdecxWdfDevice
Ein Handle für ein Frameworkgeräteobjekt, das den Controller darstellt, an den das USB-Gerät angeschlossen ist. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxWdfDeviceAddUsbDeviceEmulation initialisiert.
[in] UdecxUsbDevice
Ein Handle für das UDE-Geräteobjekt. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxUsbDeviceCreate erstellt.
[in] Interface
Dieser Wert ist die bInterfaceNumber der Schnittstelle, die aufwacht.
[in] FunctionPower
Ein wert vom typ UDECX_USB_DEVICE_FUNCTION_POWER, der angibt, ob die Schnittstelle das Aktivierungssignal anhalten und an den Hostcontroller senden kann.
Rückgabewert
Wenn der Vorgang erfolgreich ist, muss die Rückruffunktion STATUS_SUCCESS oder einen anderen status Wert zurückgeben, für den NT_SUCCESS(status) true entspricht.
Hinweise
Der Clienttreiber registrierte die Funktion in einem vorherigen Aufruf von UdecxUsbDeviceInitSetStateChangeCallbacks , indem er einen Funktionszeiger auf die Implementierung bereitgestellt hat.
In der Rückrufimplementierung wird erwartet, dass der Clienttreiber für das USB-Gerät Schritte ausführt, um in den Arbeitszustand zu gelangen.
Diese Ereignisrückruffunktion gilt für USB 3.0+ Geräte. UdeCx ruft diese Funktion auf, um den Clienttreiber über eine Anforderung zum Ändern des Energiezustands einer bestimmten Funktion zu benachrichtigen. Außerdem wird der Treiber darüber informiert, ob die Funktion aus dem neuen Zustand reaktiviert werden kann oder nicht.
Die Energieanforderung kann asynchron abgeschlossen werden, indem STATUS_PENDING zurückgegeben und später durch Aufrufen von UdecxUsbDeviceSetFunctionSuspendAndWakeComplete mit dem eigentlichen Vervollständigungscode abgeschlossen wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 |
Unterstützte Mindestversion (Server) | Windows Server 2016 |
Zielplattform | Windows |
KMDF-Mindestversion | 1.15 |
Kopfzeile | udecxusbdevice.h (einschließlich Udecx.h) |
IRQL | <=DISPATCH_LEVEL |