Partilhar via


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

[Aplica-se a KMDF e UMDF]

O de um driver EvtDeviceD0ExitPreInterruptsDisabled função de retorno de chamada de evento executa operações específicas do dispositivo que são necessárias antes que o driver desabilite as interrupções de hardware do dispositivo.

Sintaxe

EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EvtWdfDeviceD0ExitPreInterruptsDisabled;

NTSTATUS EvtWdfDeviceD0ExitPreInterruptsDisabled(
  [in] WDFDEVICE Device,
  [in] WDF_POWER_DEVICE_STATE TargetState
)
{...}

Parâmetros

[in] Device

Um identificador para um objeto de dispositivo de estrutura.

[in] TargetState

Um enumerador tipo WDF_POWER_DEVICE_STATEque identifica o estado de energia do dispositivo que o dispositivo está prestes a inserir.

Valor de retorno

Se a função EvtDeviceD0ExitPreInterruptsDisabled não encontrar erros, ela 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.

Para obter mais informações sobre os valores retornados dessa função de retorno de chamada, consulte Relatando falhas de dispositivo.

Observações

Para registrar uma função de retorno de chamada EvtDeviceD0ExitPreInterruptsDisabled, um driver deve chamar WdfDeviceInitSetPnpPowerEventCallbacks.

A função de retorno de chamada EvtDeviceD0ExitPreInterruptsDisabled é chamada em IRQL = PASSIVE_LEVEL, antes que a estrutura chame a função de retorno de chamada EvtInterruptDis able do driver. Um driver poderá fornecer essa função se precisar executar operações específicas do dispositivo antes de desabilitar uma interrupção, se essas operações não devem ser executadas em IRQL = DIRQL no função de retorno de chamada EvtInterruptDisable.

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.

Para obter mais informações sobre como lidar com interrupções, consulte Tratando interrupções de hardware.

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)

Consulte também

EvtDeviceD0EntryPostInterruptsEnabled