EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED función de devolución de llamada (wdfdevice.h)

[Se aplica a KMDF y UMDF]

La función de devolución de llamada de eventos EvtDeviceD0ExitPreInterruptsDisabled de un controlador realiza operaciones específicas del dispositivo necesarias antes de que el controlador deshabilite las interrupciones de hardware del dispositivo.

Sintaxis

EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EvtWdfDeviceD0ExitPreInterruptsDisabled;

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

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] TargetState

Enumerador con tipo WDF_POWER_DEVICE_STATE que identifica el estado de alimentación del dispositivo que el dispositivo está a punto de escribir.

Valor devuelto

Si la función de devolución de llamada EvtDeviceD0ExitPreInterruptsDisabled no encuentra ningún error, debe devolver STATUS_SUCCESS u otro valor de estado para el que NT_SUCCESS(status) es igual a TRUE. De lo contrario, debe devolver un valor de estado para el que NT_SUCCESS(status) es igual a FALSE.

Para obtener más información sobre los valores devueltos de esta función de devolución de llamada, consulte Informes de errores de dispositivo.

Comentarios

Para registrar una función de devolución de llamada EvtDeviceD0ExitPreInterruptsDisabled , un controlador debe llamar a WdfDeviceInitSetPnpPowerEventCallbacks.

La función de devolución de llamada EvtDeviceD0ExitPreInterruptsDisabled se llama en IRQL = PASSIVE_LEVEL, antes de que el marco llame a la función de devolución de llamada EvtInterruptDisable del controlador. Un controlador puede proporcionar esta función si debe realizar operaciones específicas del dispositivo antes de deshabilitar una interrupción, si esas operaciones no deben realizarse en IRQL = DIRQL en la función de devolución de llamada EvtInterruptDisable .

Para obtener más información sobre cuándo el marco llama a esta función de devolución de llamada, consulte Escenarios de administración de energía y PnP.

Para obtener más información sobre el control de interrupciones, consulte Control de interrupciones de hardware.

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Versión mínima de UMDF 2.0
Encabezado wdfdevice.h (incluya Wdf.h)
IRQL PASSIVE_LEVEL (consulte la sección Comentarios)

Consulte también

EvtDeviceD0EntryPostInterruptsEnabled