Función WdfDmaTransactionSetSingleTransferRequirement (wdfdmatransaction.h)
[Solo se aplica a KMDF]
El método WdfDmaTransactionSetSingleTransferRequirement especifica que una transacción DMA debe completarse en una única transferencia.
Sintaxis
void WdfDmaTransactionSetSingleTransferRequirement(
[in] WDFDMATRANSACTION DmaTransaction,
[in] BOOLEAN RequireSingleTransfer
);
Parámetros
[in] DmaTransaction
Identificador de un objeto de transacción DMA que el controlador obtuvo de una llamada anterior a WdfDmaTransactionCreate.
[in] RequireSingleTransfer
Valor booleano que, si es TRUE, especifica que la transacción DMA requiere una única transferencia.
Valor devuelto
None
Observaciones
Este método solicita una única transferencia solo para una única transacción. Cuando el objeto de transacción se recicla con WdfDmaTransactionRelease y reinicializado, esta configuración se restablece, de forma similar a otras propiedades de nivel de transacción, como la ejecución inmediata y la longitud máxima de transferencia.
Para solicitar una transferencia única para todas las transacciones DMA creadas con un habilitador de DMA determinado, especifique WDF_DMA_ENABLER_CONFIG_REQUIRE_SINGLE_TRANSFER en WDF_DMA_ENABLER_CONFIG_FLAGS al llamar a WdfDmaEnablerCreate. Esto equivale a llamar a WdfDmaTransactionSetSingleTransferRequirement para cada objeto de transacción creado con el habilitador DMA.
El controlador llama a WdfDmaTransactionSetSingleTransferRequirement después de crear o reciclar el objeto de transacción, pero antes de inicializarlo o ejecutarlo. Para obtener más información, consulta Usar DMA de transferencia única.
WdfDmaTransactionSetSingleTransferRequirement requiere la versión 3 de DMA. Para seleccionar DMA versión 3, establezca el miembro WdmDmaVersionOverride de WDF_DMA_ENABLER_CONFIG en 3.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.19 |
Encabezado | wdfdmatransaction.h (incluya Wdf.h) |
Library | Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos). |
IRQL | <=DISPATCH_LEVEL |