Metodo IPortWavePci::NewMasterDmaChannel (portcls.h)
Il NewMasterDmaChannel
metodo crea una nuova istanza di un canale DMA master del bus.
Sintassi
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
);
Parametri
OutDmaChannel
[in, optional] OuterUnknown
Puntatore all'interfaccia IUnknown di un oggetto che deve aggregare l'oggetto canale DMA. Questo parametro è facoltativo e, Se l'aggregazione non è obbligatoria, specificare questo parametro come NULL.
[in] PoolType
Specifica il tipo di pool di archiviazione da cui deve essere allocato l'oggetto. Si tratta di un valore di enumerazione POOL_TYPE . Specificare un tipo di pool non di paging per questo parametro.
[in, optional] ResourceList
Puntatore all'elenco di risorse del driver miniport, ovvero un oggetto IResourceList . Questo parametro è facoltativo e può essere specificato come NULL. Il NewMasterDmaChannel
metodo attualmente non usa questo parametro.
[in] ScatterGather
Richiede che il canale DMA supporti DMA a dispersione/raccolta DMA. Impostare sempre questo parametro su TRUE.
[in] Dma32BitAddresses
Specifica l'uso di indirizzi a 32 bit per le operazioni DMA.
[in] Dma64BitAddresses
Specifica l'uso di indirizzi a 64 bit per le operazioni DMA.
[in] IgnoreCount
Indica se ignorare il contatore di trasferimento del controller DMA. Impostare su TRUE se il controller DMA in questa piattaforma non gestisce un contatore di trasferimento accurato e pertanto richiede una soluzione alternativa.
[in] DmaWidth
Non usato. Impostare su (DMA_WIDTH)(-1).
[in] DmaSpeed
Non usato. Impostare su (DMA_SPEED)(-1).
[in] MaximumLength
Numero massimo di byte nel buffer che verrà associato a questo canale DMA.
[in] DmaPort
Non usato. Impostare su 0.
Valore restituito
NewMasterDmaChannel
restituisce STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato.
Commenti
Le definizioni dei parametri di chiamata per il NewMasterDmaChannel
metodo sono simili a quelle per i membri della struttura DEVICE_DESCRIPTION con gli stessi nomi.
Specificare il parametro PoolType come uno dei tipi di pool non di paging definiti nell'enumerazione POOL_TYPE. L'oggetto canale DMA non deve risiedere nella memoria di paging perché è possibile chiamare diversi metodi nell'interfaccia IDmaChannel da IRQL DISPATCH_LEVEL.
I parametri DmaChannel, OuterUnknown e ResourceList seguono le convenzioni di conteggio dei riferimenti per gli oggetti COM.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | portcls.h (include Portcls.h) |
IRQL | PASSIVE_LEVEL |