função de retorno de chamada EVT_WDF_DEVICE_D0_ENTRY (wdfdevice.h)
[Aplica-se a KMDF e UMDF]
A função de retorno de chamada de evento EvtDeviceD0Entry de um 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 do tipo WDF_POWER_DEVICE_STATE que identifica o estado de energia do dispositivo anterior.
Retornar valor
Se a função de retorno de chamada EvtDeviceD0Entry não encontrar erros, ela deverá retornar STATUS_SUCCESS ou outro valor status para o qual NT_SUCCESS(status) é igual a TRUE. Caso contrário, ele deverá retornar um valor 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 depois que a função de retorno de chamada EvtDeviceD0Entry retorna um valor status para o qual NT_SUCCESS(status) é igual a FALSE.
Comentários
Para registrar uma função de retorno de chamada EvtDeviceD0Entry para um dispositivo, um driver deve chamar WdfDeviceInitSetPnpPowerEventCallbacks.
Se o driver tiver registrado uma função de retorno de chamada EvtDeviceD0Entry para um dispositivo, a estrutura chamará a função sempre que o dispositivo entrar no 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 reiniciado).
- 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 energia).
- 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 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 sequência de remoção ordenada para o dispositivo.
- Se o dispositivo estiver retornando de um estado de baixa potência para seu estado de trabalho, a estrutura iniciará uma sequência de remoção surpresa 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 gerenciamento de energia e PnP.
Para obter mais informações sobre drivers que fornecem essa função de retorno de chamada, consulte Suporte ao PnP e ao Gerenciamento de Energia em Drivers de Função.
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 paginável.
Requisitos
Requisito | Valor |
---|---|
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) |