IPortWavePci::NewMasterDmaChannel 方法 (portcls.h)
方法 NewMasterDmaChannel
會建立總線主機 DMA 通道的新實例。
語法
NTSTATUS NewMasterDmaChannel(
PDMACHANNEL *OutDmaChannel,
[in, optional] PUNKNOWN OuterUnknown,
[in] POOL_TYPE PoolType,
[in, optional] PRESOURCELIST ResourceList,
[in] BOOLEAN ScatterGather,
[in] BOOLEAN Dma32BitAddresses,
[in] BOOLEAN Dma64BitAddresses,
[in] BOOLEAN IgnoreCount,
[in] DMA_WIDTH DmaWidth,
[in] DMA_SPEED DmaSpeed,
[in] ULONG MaximumLength,
[in] ULONG DmaPort
);
參數
OutDmaChannel
[in, optional] OuterUnknown
需要匯總 DMA 信道物件之物件的 IUnknown 介面指標。 這是選擇性參數。 如果不需要匯總,請將此參數指定為 NULL。
[in] PoolType
指定要配置物件的存放集區類型。 這是 POOL_TYPE 列舉值。 指定此參數的非分頁集區類型。
[in, optional] ResourceList
迷你埠驅動程序資源清單的指標,這是 IResourceList 物件。 此參數是選擇性的,可以指定為 NULL。 方法 NewMasterDmaChannel
目前不會使用此參數。
[in] ScatterGather
要求 DMA 通道支援散佈/收集 DMA。 一律將此參數設定為 TRUE。
[in] Dma32BitAddresses
指定 DMA 作業使用 32 位位址。
[in] Dma64BitAddresses
指定 DMA 作業使用 64 位位址。
[in] IgnoreCount
指出是否忽略 DMA 控制器的傳輸計數器。 如果此平臺中的 DMA 控制器未維護精確的傳輸計數器,則設定為 TRUE ,因此需要因應措施。
[in] DmaWidth
未使用。 設定為 (DMA_WIDTH) (-1) 。
[in] DmaSpeed
未使用。 設定為 (DMA_SPEED) (-1) 。
[in] MaximumLength
緩衝區中將與此 DMA 通道相關聯的位元組數目上限。
[in] DmaPort
未使用。 設定為 0。
傳回值
NewMasterDmaChannel
如果呼叫成功,會傳回STATUS_SUCCESS。 否則,它會傳回適當的錯誤碼。
備註
方法之呼叫參數 NewMasterDmaChannel
的定義類似於具有相同名稱 之DEVICE_DESCRIPTION 結構成員的定義。
將 PoolType 參數指定為POOL_TYPE列舉中定義的非分頁集區類型之一。 DMA 通道物件不得位於分頁記憶體中,因為可以從 IRQL DISPATCH_LEVEL呼叫 IDmaChannel 介面中的數個方法。
DmaChannel、OuterUnknown 和 ResourceList 參數會遵循 COM 物件的參考計數慣例。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | portcls.h (包含 Portcls.h) |
IRQL | PASSIVE_LEVEL |