PGET_DMA_ADAPTER_INFO回呼函式 (wdm.h)
GetDmaAdapterInfo 例程會擷取系統 DMA 通道硬體功能的相關信息。
語法
PGET_DMA_ADAPTER_INFO PgetDmaAdapterInfo;
NTSTATUS PgetDmaAdapterInfo(
[in] PDMA_ADAPTER DmaAdapter,
[in, out] PDMA_ADAPTER_INFO AdapterInfo
)
{...}
參數
[in] DmaAdapter
DMA_ADAPTER 結構的指標。 這個結構是代表驅動程式系統 DMA 通道的配接器物件。 呼叫端從 先前呼叫IoGetDmaAdapter 例程取得此指標。
[in, out] AdapterInfo
呼叫端配置 DMA_ADAPTER_INFO 結構的指標。 例程會將系統 DMA 控制器的相關信息寫入此結構。 呼叫端必須先將此結構的 Version 成員設定為DMA_ADAPTER_INFO_VERSION1,才能呼叫 GetDmaAdapterInfo。
傳回值
如果呼叫成功,GetDmaAdapterInfo 會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括下列狀態代碼。
傳回碼 | Description |
---|---|
|
例程不支援指定版本的 DMA_ADAPTER_INFO_XXX 結構。 |
備註
GetDmaAdapterInfo 不是可直接依名稱呼叫的系統例程。這個例程只能由DMA_OPERATIONS結構中傳回之位址的指標呼叫。 驅動程式會呼叫IoGetDmaAdapter,並將DeviceDescription參數的Version成員設定為 DEVICE_DESCRIPTION_VERSION3,以取得此例程的位址。 如果 IoGetDmaAdapter 傳回 NULL,則您的平台上無法使用例程。
GetDmaAdapterInfo 会擷取下列資訊:
- 散佈/收集清單中的元素數目上限,DMA 控制器可以在單一散佈/收集 DMA 作業中處理。
- DMA 位址的寬度,以位為單位。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
目標平台 | 桌面 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
IRQL | <= DISPATCH_LEVEL |