EVT_WDF_DEVICE_D0_ENTRY função de retorno de chamada (wdfdevice.h)
[Aplica-se a KMDF e UMDF]
A função de retorno de chamada de evento EvtDeviceD0Entry do driver executa operações necessárias quando o dispositivo do driver entra no estado de energia D0.
Sintaxe
EVT_WDF_DEVICE_D0_ENTRY EvtWdfDeviceD0Entry;
NTSTATUS EvtWdfDeviceD0Entry(
[in] WDFDEVICE Device,
[in] WDF_POWER_DEVICE_STATE PreviousState
)
{...}
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
[in] PreviousState
Um enumerador tipo WDF_POWER_DEVICE_STATEque identifica o estado de energia do dispositivo anterior.
Valor de retorno
Se a função de retorno de chamada EvtDeviceD0Entry não encontrar erros, ela deverá retornar STATUS_SUCCESS ou outro valor de status para o qual NT_SUCCESS(status) é igual a TRUE. Caso contrário, ele deverá retornar um valor de status para o qual NT_SUCCESS(status) é igual a false.
Para obter mais informações sobre os valores retornados dessa função de retorno de chamada, consulte Relatando falhas de dispositivo.
A estrutura não chama a função de retorno de chamada EvtDeviceD0Exit do driver após a função de retorno de chamada EvtDeviceD0Entry do retornar um valor de status para o qual NT_SUCCESS(status) é igual a FALSE.
Observações
Para registrar uma função de retorno de chamada EvtDeviceD0Entry para um dispositivo, um driver deve chamar WdfDeviceInitSetPnpPowerEventCallbacks.
Se o driver tiver registrado um EvtDeviceD0Entry função de retorno de chamada para um dispositivo, a estrutura chamará a função sempre que o dispositivo entrar em seu estado de trabalho (D0). Um dispositivo entrará no estado D0 quando ocorrer um destes procedimentos:
- Um dispositivo é enumerado (porque o dispositivo foi conectado ou o sistema foi reinicializado).
- O sistema e todos os seus dispositivos retornam aos seus estados de trabalho de um estado de baixa potência.
- O dispositivo retorna ao seu estado de trabalho depois que inseriu um estado de baixa potência porque estava ocioso (se o dispositivo dá suporte a ociosidade de baixa potência).
- O Gerenciador de Plug and Play redistribuiu os recursos de hardware do sistema entre os dispositivos do sistema.
A função de retorno de chamada deve executar todas as operações necessárias para tornar o dispositivo totalmente operacional, como carregar firmware ou habilitar recursos de dispositivo que são desabilitados quando o dispositivo está em um estado de baixa potência.
Se a função de retorno de chamada EvtDeviceD0Entry retornar um valor de status para o qual NT_SUCCESS(status) é igual a FALSE, a estrutura fará o seguinte:
- Se o dispositivo estiver começando pela primeira vez, a estrutura iniciará uma remoção ordenada sequência para o dispositivo.
- Se o dispositivo estiver retornando de um estado de baixa potência para seu estado de trabalho, a estrutura iniciará uma remoção surpresa sequência para o dispositivo.
Para obter mais informações sobre quando a estrutura chama a função de retorno de chamada EvtDeviceD0Entry, consulte cenários de PnP e gerenciamento de energia.
Para obter mais informações sobre drivers que fornecem essa função de retorno de chamada, consulte Suporte a PnP e gerenciamento de energia em drivers de funções.
A função de retorno de chamada EvtDeviceD0Entry é chamada em IRQL = PASSIVE_LEVEL. Você não deve tornar essa função de retorno de chamada pageable.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
versão mínima do KMDF | 1.0 |
versão mínima do UMDF | 2.0 |
cabeçalho | wdfdevice.h (inclua Wdf.h) |
IRQL | PASSIVE_LEVEL (consulte a seção Comentários) |