PO_FX_DIRECTED_POWER_DOWN_CALLBACK função de retorno de chamada (wdm.h)

A função de retorno de chamada PO_FX_DIRECTED_POWER_DOWN_CALLBACK é implementada pelo driver cliente para lidar com atividades de desligamento específicas do driver em nome do DFx ( Directed PoFx).

Sintaxe

PO_FX_DIRECTED_POWER_DOWN_CALLBACK PoFxDirectedPowerDownCallback;

void PoFxDirectedPowerDownCallback(
  PVOID Context,
  ULONG Flags
)
{...}

Parâmetros

Context

Fornece um ponteiro para o contexto passado para PoFxRegisterDevice.

Flags

Reservado para uso futuro.

Retornar valor

Nenhum

Comentários

Os drivers WDM que se registram no PoFx para suporte ao gerenciamento de energia ociosa de runtime precisam implementar esse retorno de chamada para adicionar suporte a DFx.

Registre sua implementação dessa função de retorno de chamada definindo o membro apropriado da estrutura PO_FX_DEVICE_V3 e, em seguida, chamando PoFxRegisterDevice.

Esse retorno de chamada é invocado durante uma sessão de Espera Moderna quando este dispositivo ou um dependente deste dispositivo bloqueou a entrada DRIPS por pelo menos dois minutos consecutivos (tempo limite configurável pelo driver, padrão de 2 minutos) sem nenhuma atividade de software agenciada pelo ativador em execução.

Quando esse retorno de chamada é invocado, o driver normalmente executa as seguintes tarefas de alto nível:

  • Pare de processar novos trabalhos.

  • Faça a transição para o estado de baixa energia imediatamente.

  • Permaneça em estado de baixa potência até que o sistema chame o PO_FX_DIRECTED_POWER_UP_CALLBACK do driver.

As etapas de implementação e a ordem podem variar, mas podem incluir algumas das seguintes opções:

  • Solicite um Dx IRP.

  • Depois que o Dx IRP chegar, bloqueie as filas de E/S.

  • Aguarde a conclusão das operações em andamento.

  • Se essas operações estiverem demorando muito, opcionalmente cancele-as.

  • Execute as ações necessárias para fazer a transição do dispositivo para o Dx (por exemplo, salvar o estado do hardware).

  • Armar para ativar conforme necessário.

  • Chame PoFxCompleteDirectedPowerDown.

  • Permaneça em Dx até que o sistema chame PO_FX_DIRECTED_POWER_UP_CALLBACK.

O contrato é muito semelhante ao S3/S4, embora nenhum S-IRPs esteja envolvido.

Se uma hierarquia de dispositivos estiver envolvida, a estrutura de energia direcionada solicitará que os dispositivos filho desliguem antes do dispositivo pai. Para um determinado dispositivo pai, os filhos diretos (os enumerados pelo pai) e os filhos indiretos devido às relações de energia são considerados.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1903
Cabeçalho wdm.h (include Wdm.h)

Confira também

Introdução à estrutura de gerenciamento de energia direcionada

PO_FX_DIRECTED_POWER_UP_CALLBACK