Share via


支援 DMA 裝置的電源管理

[僅適用于 KMDF]

DMA 啟用器物件會定義一組選擇性事件回呼函式,DMA 裝置的驅動程式可用來管理裝置運作 (D0) 狀態的轉換。

每次 DMA 裝置進入其工作狀態,而且架構呼叫驅動程式的 EvtDeviceD0Entry 回呼函式之後,架構會依列出的順序呼叫下列 DMA 回呼函式:

EvtDmaEnablerFill
配置裝置的 DMA 緩衝區。

EvtDmaEnablerEnable
在裝置進入其運作 (D0) 狀態之後,啟用裝置的 DMA 功能。

EvtDmaEnablerSelfManagedIoStart
啟動 DMA 裝置的自我管理 I/O 作業。

每次 DMA 裝置離開其運作狀態,而且架構在呼叫驅動程式的 EvtDeviceD0Exit 回呼函式之前,架構都會依列出的順序呼叫下列 DMA 回呼函式:

EvtDmaEnablerSelfManagedIoStop
停止 DMA 裝置的自我管理 I/O 作業。

EvtDmaEnablerDisable
在裝置離開其運作 (D0) 狀態之前,先停用裝置的 DMA 功能。

EvtDmaEnablerFlush
解除配置裝置的 DMA 緩衝區。

如需架構呼叫驅動程式事件回呼函式順序的詳細資訊,請參閱 PnP 和電源管理案例