функция обратного вызова EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED (wdfdevice.h)

[Применимо к KMDF и UMDF]

Функция обратного вызова события EvtDeviceD0ExitPreInterruptsDisabled в драйвере выполняет операции, связанные с устройством, прежде чем драйвер отключит аппаратные прерывания устройства.

Синтаксис

EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EvtWdfDeviceD0ExitPreInterruptsDisabled;

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

Параметры

[in] Device

Дескриптор объекта устройства платформы.

[in] TargetState

Перечислитель с WDF_POWER_DEVICE_STATE типом, который определяет состояние питания устройства, в которое устройство будет входить.

Возвращаемое значение

Если функция обратного вызова EvtDeviceD0ExitPreInterruptsDisabled не обнаруживает ошибок, она должна возвращать STATUS_SUCCESS или другое значение состояния, для которого NT_SUCCESS(status) равно TRUE. В противном случае он должен возвращать значение состояния, для которого NT_SUCCESS(status) равно FALSE.

Дополнительные сведения о возвращаемых значениях этой функции обратного вызова см. в разделе Создание отчетов о сбоях устройств.

Комментарии

Чтобы зарегистрировать функцию обратного вызова EvtDeviceD0ExitPreInterruptsDisabled , драйвер должен вызвать WdfDeviceInitSetPnpPowerEventCallbacks.

Функция обратного вызова EvtDeviceD0ExitPreInterruptsDisabled вызывается в IRQL = PASSIVE_LEVEL, прежде чем платформа вызывает функцию обратного вызова EvtInterruptDisable драйвера. Драйвер может предоставить эту функцию, если перед отключением прерывания он должен выполнять операции для конкретного устройства, если эти операции не должны выполняться в IRQL = DIRQL в функции обратного вызова EvtInterruptDisable .

Дополнительные сведения о том, когда платформа вызывает эту функцию обратного вызова, см. в разделе Сценарии PnP и управления питанием.

Дополнительные сведения об обработке прерываний см. в разделе Обработка аппаратных прерываний.

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Минимальная версия UMDF 2,0
Верхняя часть wdfdevice.h (включая Wdf.h)
IRQL PASSIVE_LEVEL (см. раздел "Примечания")

См. также раздел

EvtDeviceD0EntryPostInterruptsEnabled