Função WdfDmaTransactionSetSingleTransferRequirement (wdfdmatransaction.h)
[Aplica-se somente ao KMDF]
O método WdfDmaTransactionSetSingleTransferRequirement especifica que uma transação DMA deve ser concluída em uma única transferência.
Sintaxe
void WdfDmaTransactionSetSingleTransferRequirement(
[in] WDFDMATRANSACTION DmaTransaction,
[in] BOOLEAN RequireSingleTransfer
);
Parâmetros
[in] DmaTransaction
Um identificador para um objeto de transação DMA que o driver obteve de uma chamada anterior para WdfDmaTransactionCreate.
[in] RequireSingleTransfer
Um valor booliano que, se TRUE, especifica que a transação DMA requer uma única transferência.
Retornar valor
Nenhum
Comentários
Esse método solicita apenas uma única transferência para uma única transação. Quando o objeto de transação é reciclado com WdfDmaTransactionRelease e reinicializado, essa configuração é redefinida, semelhante a outras propriedades de nível de transação, como execução imediata e comprimento máximo de transferência.
Para solicitar a transferência única para todas as transações de DMA criadas com um determinado habilitador de DMA, especifique WDF_DMA_ENABLER_CONFIG_REQUIRE_SINGLE_TRANSFER em WDF_DMA_ENABLER_CONFIG_FLAGS ao chamar WdfDmaEnablerCreate. Isso equivale a chamar WdfDmaTransactionSetSingleTransferRequirement para cada objeto de transação criado com o habilitador de DMA.
O driver chama WdfDmaTransactionSetSingleTransferRequirement depois de criar ou reciclar o objeto de transação, mas antes de inicializá-lo ou executá-lo. Para obter mais informações, consulte Usando o DMA de transferência única.
WdfDmaTransactionSetSingleTransferRequirement requer dma versão 3. Para selecionar o DMA versão 3, defina o membro WdmDmaVersionOverride de WDF_DMA_ENABLER_CONFIG como 3.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1,19 |
Cabeçalho | wdfdmatransaction.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | <=DISPATCH_LEVEL |