Поддержка управления питанием для устройств DMA

[Применимо только к KMDF]

Объект включения DMA определяет набор необязательных функций обратного вызова событий, которые драйверы для устройств DMA могут использовать для управления переходами в рабочее состояние устройства (D0) и из него.

Каждый раз, когда устройство DMA входит в рабочее состояние, и после того как фреймворк вызывает функцию обратного вызова EvtDeviceD0Entry, фреймворк вызывает следующие функции обратного вызова DMA в порядке, в котором они перечислены:

EvtDmaEnablerFill
Выделяет буферы DMA устройства.

EvtDmaEnablerEnable
Включает возможность DMA устройства после ввода устройства в рабочее состояние (D0).

EvtDmaEnablerSelfManagedIoStart
Запускает самоуправляемые операции ввода-вывода устройства DMA.

Каждый раз, когда устройство DMA выходит из рабочего состояния и до того, как фреймворк вызовет функции обратного вызова драйвера EvtDeviceD0Exit, фреймворк вызывает в перечисленном порядке следующие функции обратного вызова DMA:

EvtDmaEnablerSelfManagedIoStop
Останавливает самоуправляемые операции ввода-вывода устройства DMA.

EvtDmaEnablerDisable
Отключает возможность DMA устройства, прежде чем устройство покидает рабочее состояние (D0).

EvtDmaEnablerFlush
Освобождает буферы DMA устройства.

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