PFREE_ADAPTER_CHANNEL回调函数 (wdm.h)

当驱动程序已完成满足当前 IRP 所需的所有 DMA 操作时, FreeAdapterChannel 例程会释放系统 DMA 控制器。

语法

PFREE_ADAPTER_CHANNEL PfreeAdapterChannel;

void PfreeAdapterChannel(
  [in] PDMA_ADAPTER DmaAdapter
)
{...}

参数

[in] DmaAdapter

指向 IoGetDmaAdapter 返回的DMA_ADAPTER结构的指针,该结构表示总线主适配器或 DMA 控制器。

返回值

备注

FreeAdapterChannel 不是可直接按名称调用的系统例程。 此例程只能由 DMA_OPERATIONS结构中 返回的地址中的指针调用。 驱动程序通过调用 IoGetDmaAdapter 获取此例程的地址。

驱动程序传输所有数据并调用 FlushAdapterBuffers 后,它会调用 FreeAdapterChannel 来释放以前通过调用 AllocateAdapterChannel 分配的系统 DMA 控制器。

FreeAdapterChannel 释放之前调用 AllocateAdapterChannel 分配的任何映射寄存器。 驱动程序仅当其 AdapterControl 例程返回 KeepObject 时才调用此例程。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 桌面
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
IRQL DISPATCH_LEVEL
DDI 符合性规则 IrqlDispatch (storport) 、IrqlDispatch (storport) 、 IrqlDispatch (wdm)

另请参阅

AllocateAdapterChannel

DMA_ADAPTER

DMA_OPERATIONS

FlushAdapterBuffers

FreeMapRegisters

IoGetDmaAdapter

MapTransfer