Compartilhar via


EVT_WDF_DEVICE_ARM_WAKE_FROM_SX função de retorno de chamada (wdfdevice.h)

[Aplica-se a KMDF e UMDF]

A função de retorno de chamada de evento EvtDeviceArmWakeFromSx de um driver (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. O sinal de ativação faz com que o dispositivo insira seu estado de trabalho (D0) e faz com que o sistema insira seu estado de trabalho (S0).

Sintaxe

EVT_WDF_DEVICE_ARM_WAKE_FROM_SX EvtWdfDeviceArmWakeFromSx;

NTSTATUS EvtWdfDeviceArmWakeFromSx(
  [in] WDFDEVICE Device
)
{...}

Parâmetros

[in] Device

Um identificador para um objeto de dispositivo de estrutura.

Retornar valor

Se a função de retorno de chamada EvtDeviceArmWakeFromSx não encontrar nenhum erro, 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.

Se NT_SUCCESS(status) for igual a FALSE, a estrutura chamará a função de retorno de chamada EvtDeviceDisarmWakeFromSx do driver. (A estrutura não relata uma falha de dispositivo para o gerenciador PnP.)

Comentários

Para registrar uma função de retorno de chamada EvtDeviceArmWakeFromSx , um driver deve chamar WdfDeviceInitSetPowerPolicyEventCallbacks. Os drivers podem registrar uma função de retorno de chamada EvtDeviceArmWakeFromSx ou uma função de retorno de chamada EvtDeviceArmWakeFromSxWithReason , mas não ambas.

Essa função de retorno de chamada 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 do barramento lida com operações específicas do barramento, como habilitar o sinal pme (evento de gerenciamento de energia) do barramento PCI.

Se um driver tiver registrado uma função de retorno de chamada EvtDeviceArmWakeFromSx ou EvtDeviceArmWakeFromSxWithReason , 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 um IRP de espera/ativação em nome do driver.

O processo ocorre na seguinte sequência:

  1. A estrutura determina que o sistema está prestes a entrar em um estado de sistema de baixa potência.
  2. A estrutura chama a função de retorno de chamada EvtDeviceArmWakeFromSx ou EvtDeviceArmWakeFromSxWithReason do driver.
  3. A estrutura solicita ao driver que o barramento do dispositivo reduza a potência do dispositivo.
Imediatamente antes de um dispositivo entrar em um estado de baixa potência, a estrutura chama a função de retorno de chamada EvtDeviceD0Exit do driver.

Para obter mais informações sobre quando a estrutura chama essa função de retorno de chamada, consulte Cenários de gerenciamento de energia e PnP.

Você não precisa fornecer uma função de retorno de chamada EvtDeviceArmWakeFromSx ou EvtDeviceArmWakeFromSxWithReason se o dispositivo não exigir operações de hardware especiais que permitam ao dispositivo disparar um sinal de ativação.

Para obter mais informações sobre essa função de retorno de chamada, consulte Suporte ao wake-up do sistema.

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

Confira também

EvtDeviceArmWakeFromS0

EvtDeviceArmWakeFromSxWithReason

EvtDeviceDisarmWakeFromSx