WdfDmaTransactionGetTransferInfo 函式 (wdfdmatransaction.h)

[僅適用於 KMDF]

WdfDmaTransactionGetTransferInfo 方法會傳回初始化 DMA 交易所需的對應緩存器和散佈/收集清單項目數目。

語法

void WdfDmaTransactionGetTransferInfo(
  [in]            WDFDMATRANSACTION DmaTransaction,
  [out, optional] ULONG             *MapRegisterCount,
  [out, optional] ULONG             *ScatterGatherElementCount
);

參數

[in] DmaTransaction

已初始化 DMA 交易物件的句柄。

[out, optional] MapRegisterCount

傳回時所提供呼叫端提供的位置,包含指定交易所需的對應緩存器數目。 這個參數是選擇性的,而且可以是 NULL。

[out, optional] ScatterGatherElementCount

傳回時,呼叫端提供的位置包含指定交易所需的散佈/收集元素數目。 這個參數是選擇性的,而且可以是 NULL。

傳回值

備註

驅動程式可能會在呼叫 WdfDmaTransactionAllocateResourcesWdfDmaTransactionExecute 之前呼叫 WdfDmaTransactionGetTransferInfo

使用 DMA 第 3 版時,此方法會傳回所需地圖緩存器數目的精確計數。 使用舊版 DMA 時,此方法會假設每個頁面都需要地圖緩存器。

規格需求

需求
目標平台 Universal
最低 KMDF 版本 1.11
標頭 wdfdmatransaction.h (包含 Wdf.h)
程式庫 Wdf01000.sys (請參閱 Framework Library Versioning.)
IRQL <=DISPATCH_LEVEL
DDI 合規性規則 DriverCreate (kmdf)

另請參閱

WdfDmaTransactionAllocateResources

WdfDmaTransactionExecute