Método IPortWaveCíclico::NewMasterDmaChannel (portcls.h)
El NewMasterDmaChannel
método crea una nueva instancia de un canal DMA maestro de bus.
Sintaxis
NTSTATUS NewMasterDmaChannel(
[out] PDMACHANNEL *DmaChannel,
[in] PUNKNOWN OuterUnknown,
[in, optional] PRESOURCELIST ResourceList,
[in] ULONG MaximumLength,
[in] BOOLEAN Dma32BitAddresses,
[in] BOOLEAN Dma64BitAddresses,
[in] DMA_WIDTH DmaWidth,
[in] DMA_SPEED DmaSpeed
);
Parámetros
[out] DmaChannel
Puntero a una variable de puntero asignada por el autor de la llamada en la que el método escribe un puntero en el nuevo objeto IDmaChannel . Especifique un valor de puntero válido que no sea NULL para este parámetro.
[in] OuterUnknown
Puntero a la interfaz IUnknown de un objeto que necesita agregar el objeto de canal DMA. Este parámetro es opcional. Si no se requiere la agregación, especifique este parámetro como NULL.
[in, optional] ResourceList
Puntero a la lista de recursos del controlador de minipuerto, que es un objeto IResourceList . Este parámetro es opcional y se puede especificar como NULL. Actualmente, el NewMasterDmaChannel
método no usa este parámetro.
[in] MaximumLength
Longitud máxima en bytes del búfer DMA cíclico que se asociará a este canal.
[in] Dma32BitAddresses
Especifica el uso de direcciones de 32 bits.
[in] Dma64BitAddresses
Especifica el uso de direcciones de 64 bits.
[in] DmaWidth
No se usa. Establezca en (DMA_WIDTH)(-1).
[in] DmaSpeed
No se usa. Establézcalo en (DMA_SPEED)(-1).
Valor devuelto
NewMasterDmaChannel
devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, el método devuelve un código de error adecuado.
Comentarios
Los parámetros MaximumLength, Dma32BitAddresses, Dma64BitAddresses, DmaWidth y DmaSpeed son similares a los miembros de la estructura DEVICE_DESCRIPTION con los mismos nombres.
Un dispositivo WaveCíclico con hardware DMA de maestro de bus integrado se conoce como dispositivo maestro. Por el contrario, un dispositivo subordinado carece de hardware DMA y tiene que confiar en el controlador DMA del sistema para realizar las transferencias de datos que requiere. El NewMasterDmaChannel
método crea un objeto de canal DMA para un dispositivo maestro. Para crear un objeto de canal DMA para un dispositivo subordinado, llame al método IPortWaveCíclico::NewSlaveDmaChannel en su lugar. Para obtener más información sobre los dispositivos maestros y subordinados, consulte IDmaChannel e IDmaChannelSlave.
Los parámetros DmaChannel, OuterUnknown y ResourceList siguen las convenciones de recuento de referencias para objetos COM.
Nota
Microsoft admite un entorno diverso e inclusivo. Este artículo contiene referencias a la terminología que la guía de estilo de Microsoft para la comunicación sin sesgo reconoce como exclusionary. La palabra o frase se usa en este artículo para la coherencia porque aparece actualmente en el software. Cuando el software se actualice para quitar el idioma, este artículo se actualizará para que esté en alineación.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Encabezado | portcls.h (incluir Portcls.h) |
IRQL | PASSIVE_LEVEL |