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)

EVT_UDECX_USB_DEVICE_D0_ENTRY

UdecxUsbDeviceLinkPowerExitComplete

UdecxUsbDeviceSignalWake

Escrever um driver de cliente UDE