Supporting Power Management for DMA Devices

[Applies to KMDF only]

The DMA enabler object defines a set of optional event callback functions that drivers for DMA devices can use to manage transitions into and out of a device's working (D0) state.

Each time a DMA device enters its working state, and after the framework has called the driver's EvtDeviceD0Entry callback function, the framework calls the following DMA callback functions, in the order that they are listed:

EvtDmaEnablerFill

Allocates a device's DMA buffers.

EvtDmaEnablerEnable

Enables a device's DMA capability after the device enters its working (D0) state.

EvtDmaEnablerSelfManagedIoStart

Starts a DMA device's self-managed I/O operations.

Each time a DMA device leaves its working state, and before the framework has called the driver's EvtDeviceD0Exit callback functions, the framework calls the following DMA callback functions, in the order that they are listed:

EvtDmaEnablerSelfManagedIoStop

Stops a DMA device's self-managed I/O operations.

EvtDmaEnablerDisable

Disables a device's DMA capability before the device leaves its working (D0) state.

EvtDmaEnablerFlush

Deallocates a device's DMA buffers.

For more information about the order in which the framework calls a driver's event callback functions, see PnP and Power Management Scenarios.

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft