EVT_WDF_DEVICE_ARM_WAKE_FROM_S0 função de retorno de chamada (wdfdevice.h)
[Aplica-se a KMDF e UMDF]
O de um driver EvtDeviceArmWakeFromS0 braços de função de retorno de chamada de evento (ou seja, habilita) um dispositivo para que ele possa disparar um sinal de ativação enquanto estiver em um estado de dispositivo de baixa potência, se o sistema permanecer no estado de trabalho do sistema (S0).
Sintaxe
EVT_WDF_DEVICE_ARM_WAKE_FROM_S0 EvtWdfDeviceArmWakeFromS0;
NTSTATUS EvtWdfDeviceArmWakeFromS0(
[in] WDFDEVICE Device
)
{...}
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
Valor de retorno
Se a operação for bem-sucedida, a função de retorno de chamada EvtDeviceArmWakeFromS0 deverá retornar STATUS_SUCCESS ou outro valor de status para o qual NT_SUCCESS(status) é igual VERDADEIRO. Caso contrário, ele deverá retornar um valor de status para o qual NT_SUCCESS(status) é igual a FALSE.
Se NT_SUCCESS(status) for igual a FALSE, a estrutura não chamará a função de retorno de chamada do driver EvtDeviceDisarmWakeFromS0. (A estrutura não relata uma falha de dispositivo para o gerenciador PnP.)
Observações
Para registrar uma função de retorno de chamada EvtDeviceArmWakeFromS0, um driver deve chamar WdfDeviceInitSetPowerPolicyEventCallbacks. Além disso, o driver deve definir IdleCanWakeFromS0 no idleCaps membro de sua estrutura WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS.
A função de retorno de chamada EvtDeviceArmWakeFromS0 manipula operações específicas do dispositivo necessárias para permitir que o dispositivo detecte um evento externo que dispara um sinal de ativação no barramento. A função de retorno de chamada EvtDeviceEnableWakeAtBus do motorista de ônibus lida com operações específicas do barramento, como habilitar o sinal de PME (Evento de Gerenciamento de Energia) do barramento PCI.
Se o driver tiver registrado uma função de retorno de chamada EvtDeviceArmWakeFromS0, a estrutura a chamará enquanto o dispositivo ainda estiver no estado de energia do dispositivo D0, antes que o driver de ônibus reduza o estado de energia do dispositivo, mas depois que a estrutura enviar uma IRP de espera/ativação em nome do driver.
O processo ocorre na seguinte sequência:
- A estrutura determina que o dispositivo ficou ocioso por um período predefinido.
- A estrutura chama a função de retorno de chamada do driver EvtDeviceArmWakeFromS0.
- A estrutura solicita ao driver que o barramento do dispositivo diminua a potência do dispositivo.
Para obter mais informações sobre quando a estrutura chama essa função de retorno de chamada, consulte cenários de PnP e gerenciamento de energia.
Você não precisa fornecer uma função de retorno de chamada EvtDeviceArmWakeFromS0 se o dispositivo:
- É um dispositivo USB que dá suporte à "suspensão seletiva".
- Não é possível desligar enquanto o sistema permanece totalmente ligado.
- Não requer operações de hardware especiais que permitem que o dispositivo dispare um sinal de ativação.
Para obter mais informações sobre essa função de retorno de chamada, consulte Suporte aode power-down ocioso.
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 |