DMA_ADAPTER结构 (wdm.h)

DMA_ADAPTER结构描述给定设备的 DMA 控制器的系统定义接口。 驱动程序调用 IoGetDmaAdapter 来获取此结构。

语法

typedef struct _DMA_ADAPTER {
  USHORT          Version;
  USHORT          Size;
  PDMA_OPERATIONS DmaOperations;
} *PADAPTER_OBJECT, DMA_ADAPTER, *PDMA_ADAPTER;

成员

Version

指定此结构的版本。 DMA_ADAPTER 结构的版本 3 从 Windows 8 开始可用。 对于此结构的版本 1 和 2,此成员设置为值 1。 有关更多信息,请参见下面的“备注”部分。

Size

指定此结构的大小(以字节为单位)。

DmaOperations

指向 DMA_OPERATIONS 结构的指针,该结构包含指向 DMA 适配器函数的指针。 此成员指向的 DMA_OPERATIONS 结构的版本由 DMA_ADAPTER 结构的版本确定。 因此,对于 DMA_ADAPTER 结构的版本 1,DmaOperations 指向 DMA_OPERATIONS 结构的版本 1,依此而行。 有关结构版本的详细信息,请参阅以下“备注”部分。

注解

使用 DMA 传输数据的设备的驱动程序使用此结构来获取支持使用 DMA 控制器的函数的地址。 通常,驱动程序通过调用 IoGetDmaAdapter 例程来获取此结构。 驱动程序还可以通过查询 BUS_INTERFACE_STANDARD 接口来获取此结构。

IoGetDmaAdapter 例程返回指向 DMA_ADAPTER 结构版本 1 或版本 2 的指针时,此例程始终将此结构的 Version 成员设置为 1。 因此,调用方无法使用 Version 成员来区分 DMA_ADAPTER 结构的版本 1 和版本 2。 有关如何确定此例程返回 的 DMA_ADAPTER 结构版本的详细信息,请参阅 IoGetDmaAdapter

要求

要求
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)

另请参阅

BUS_INTERFACE_STANDARD

DMA_OPERATIONS

IoGetDmaAdapter