Hardware Dev Center

Expand Minimize

WdfDmaTransactionSetImmediateExecution method

[Applies to KMDF only]

The WdfDmaTransactionSetImmediateExecution method marks the specified DMA transaction so that calls to WdfDmaTransactionExecute and WdfDmaTransactionAllocateResources initiate the transaction immediately or fail.

Syntax


void WdfDmaTransactionSetImmediateExecution(
  [in] WDFDMATRANSACTION DmaTransaction,
  [in] BOOLEAN           UseImmediateExecution
);

Parameters

DmaTransaction [in]

A handle to a DMA transaction object to mark for immediate execution.

UseImmediateExecution [in]

A Boolean value which, if TRUE, indicates that the transaction should execute immediately (or fail if resources are not available), and, if FALSE, indicates that the transaction should be queued for execution once DMA resources are available.

Return value

This method does not return a value.

Remarks

Before calling WdfDmaTransactionSetImmediateExecution, the driver must initialize the transaction.

If the driver calls WdfDmaTransactionExecute or WdfDmaTransactionAllocateResources after calling WdfDmaTransactionSetImmediateExecution with UseImmediateExecution set to TRUE, and the resources needed for the request are unavailable, that method returns STATUS_INSUFFICIENT_RESOURCES. If the required resources are available, the framework claims them and initiates the call synchronously.

After the driver marks a transaction for immediate execution, the transaction remains marked as such until the driver calls WdfDmaTransactionRelease or clears the flag by calling WdfDmaTransactionSetImmediateExecution with UseImmediateExecution set to FALSE.

WdfDmaTransactionSetImmediateExecution requires DMA version 3. To select DMA version 3, set the WdmDmaVersionOverride member of WDF_DMA_ENABLER_CONFIG to 3.

If your driver calls this method on an operating system earlier than Windows 8, the framework's verifier reports an error.

Requirements

Target platform

Universal

Minimum support

Windows 8

Minimum KMDF version

1.11

Header

Wdfdmatransaction.h (include Wdf.h)

Library

Wdf01000.sys (see Framework Library Versioning.)

IRQL

<=DISPATCH_LEVEL

DDI compliance rules

DriverCreate

See also

WdfDmaTransactionAllocateResources
WdfDmaTransactionExecute
WdfDmaTransactionRelease

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft