EVT_UDECX_USB_DEVICE_D0_EXIT fonction de rappel (udecxusbdevice.h)
L’extension de classe d’émulation de périphérique USB (UdeCx) appelle cette fonction de rappel lorsqu’elle reçoit une demande d’envoi du périphérique USB virtuel à un état d’alimentation faible.
Syntaxe
EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;
NTSTATUS EvtUdecxUsbDeviceD0Exit(
[in] WDFDEVICE UdecxWdfDevice,
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}
Paramètres
[in] UdecxWdfDevice
Handle à un objet d’appareil framework qui représente le contrôleur auquel le périphérique USB est attaché. Le pilote client a initialisé cet objet dans un appel précédent à UdecxWdfDeviceAddUsbDeviceEmulation.
[in] UdecxUsbDevice
Handle vers l’objet d’appareil UDE. Le pilote client a créé cet objet dans un appel précédent à UdecxUsbDeviceCreate.
[in] WakeSetting
Valeur de type UDECX_USB_DEVICE_WAKE_SETTING qui indique la capacité de sortie de veille à distance du périphérique USB.
Valeur retournée
Si l’opération réussit, la fonction de rappel doit retourner STATUS_SUCCESS, ou une autre valeur status pour laquelle NT_SUCCESS(status) est égal à TRUE.
Remarques
Le pilote client a inscrit la fonction dans un appel précédent à UdecxUsbDeviceInitSetStateChangeCallbacks en fournissant un pointeur de fonction vers son implémentation.
Dans l’implémentation du rappel, le pilote client pour le périphérique USB est censé effectuer des étapes pour envoyer le périphérique à un état d’alimentation faible. Dans cette fonction, le pilote peut lancer sa mise en éveil à partir d’un état d’alimentation faible de liaison, d’une interruption de fonction ou des deux. Pour ce faire, le pilote d’un périphérique USB 2.0 doit appeler la méthode UdecxUsbDeviceSignalWake . Les appareils USB 3.0 doivent utiliser UdecxUsbDeviceSignalFunctionWake.
La demande d’alimentation peut être effectuée de manière asynchrone en retournant STATUS_PENDING, puis en appelant ultérieurement UdecxUsbDeviceLinkPowerExitComplete avec le code d’achèvement réel.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 |
Serveur minimal pris en charge | Windows Server 2016 |
Plateforme cible | Windows |
Version KMDF minimale | 1.15 |
En-tête | udecxusbdevice.h (include Udecx.h) |
IRQL | <=DISPATCH_LEVEL |
Voir aussi
Architecture : Émulation de périphérique USB (UDE)