EVT_UCX_USBDEVICE_DISABLE fonction de rappel (ucxusbdevice.h)
Implémentation du pilote client que UCX appelle pour libérer les ressources du contrôleur associées à l’appareil et à son point de terminaison par défaut.
Syntaxe
EVT_UCX_USBDEVICE_DISABLE EvtUcxUsbdeviceDisable;
void EvtUcxUsbdeviceDisable(
[in] UCXCONTROLLER UcxController,
[in] WDFREQUEST Request
)
{...}
Paramètres
[in] UcxController
Handle du contrôleur UCX reçu par le pilote client lors d’un appel précédent à la méthode UcxControllerCreate.
[in] Request
Structure de type USBDEVICE_DISABLE.
Valeur de retour
Aucun
Remarques
Le pilote client UCX inscrit cette fonction de rappel avec l’extension UCX (Host Controller Extension) USB en appelant la méthode UcxUsbDeviceCreate.
Lorsque le pilote client a libéré les ressources du contrôleur, il termine wdFREQUEST. Une fois l’opération terminée, la seule fonction de rappel que UCX appelle faisant référence à cet appareil USB est EVT_UCX_USBDEVICE_ENABLE.
Bien que l’appareil soit désactivé, UCX ne planifie pas les transferts pour celui-ci.
Pour passer l’appareil à l’état souhaité, le pilote du contrôleur hôte communique avec le matériel pour terminer la requête.
Le pilote client retourne l’état d’achèvement dans demande. Le pilote peut effectuer l’opération WDFREQUEST de manière asynchrone.
Exemples
VOID
UsbDevice_EvtUcxUsbDeviceDisable(
UCXCONTROLLER UcxController,
WDFREQUEST Request
)
{
UNREFERENCED_PARAMETER(UcxController);
DbgTrace(TL_INFO, UsbDevice, "UsbDevice_EvtUcxUsbDeviceDisable");
WDF_REQUEST_PARAMETERS_INIT(&wdfRequestParams);
WdfRequestGetParameters(WdfRequest, &wdfRequestParams);
usbDeviceDisable = (PUSBDEVICE_DISABLE)wdfRequestParams.Parameters.Others.Arg1;
...
WdfRequestComplete(Request, STATUS_SUCCESS);
}
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Windows |
version minimale de KMDF | 1.0 |
version minimale de UMDF | 2.0 |
d’en-tête | ucxusbdevice.h (include Ucxclass.h) |
IRQL | DISPATCH_LEVEL |