EVT_UDECX_USB_DEVICE_D0_EXIT função de retorno de chamada (udecxusbdevice.h)
A extensão de classe de emulação de dispositivo USB (UdeCx) invoca essa função de retorno de chamada quando obtém uma solicitação para enviar o dispositivo USB virtual para um estado de baixa potência.
Sintaxe
EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;
NTSTATUS EvtUdecxUsbDeviceD0Exit(
[in] WDFDEVICE UdecxWdfDevice,
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}
Parâmetros
[in] UdecxWdfDevice
Um identificador para um objeto de dispositivo de estrutura que representa o controlador ao qual o dispositivo USB está anexado. O driver do cliente inicializou esse objeto em uma chamada anterior para UdecxWdfDeviceAddUsbDeviceEmulation.
[in] UdecxUsbDevice
Um identificador para o objeto do dispositivo UDE. O driver cliente criou esse objeto em uma chamada anterior para UdecxUsbDeviceCreate.
[in] WakeSetting
Um valor de tipo UDECX_USB_DEVICE_WAKE_SETTING que indica a capacidade de ativação remota do dispositivo USB.
Retornar valor
Se a operação for bem-sucedida, a função de retorno de chamada deverá retornar STATUS_SUCCESS ou outro valor status para o qual NT_SUCCESS(status) é igual a TRUE.
Comentários
O driver cliente registrou a função em uma chamada anterior para UdecxUsbDeviceInitSetStateChangeCallbacks fornecendo um ponteiro de função para sua implementação.
Na implementação do retorno de chamada, espera-se que o driver cliente do dispositivo USB execute etapas para enviar o dispositivo para um estado de baixa energia. Nessa função, o driver pode iniciar sua ativação de um estado de energia de link baixo, suspensão de função ou ambos. Para fazer isso, o driver de um dispositivo USB 2.0 deve chamar o método UdecxUsbDeviceSignalWake . Os dispositivos USB 3.0 devem usar UdecxUsbDeviceSignalFunctionWake.
A solicitação de energia pode ser concluída de forma assíncrona retornando STATUS_PENDING e, posteriormente, chamando UdecxUsbDeviceLinkPowerExitComplete com o código de conclusão real.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 |
Servidor mínimo com suporte | Windows Server 2016 |
Plataforma de Destino | Windows |
Versão mínima do KMDF | 1.15 |
Cabeçalho | udecxusbdevice.h (inclua Udecx.h) |
IRQL | <=DISPATCH_LEVEL |
Confira também
Arquitetura: UDE (Emulação de Dispositivo USB)