IDmaChannelSlave::WaitForTC method

The WaitForTC method waits for the DMA-transfer terminal count to complete, or it times out if the specified time-out interval expires first.

Syntax


NTSTATUS WaitForTC(
   ULONG Timeout
);

Parameters

Timeout

Specifies the time-out interval in microseconds. This interval is the length of time that the method waits for the transfer to complete before timing out. The specified time-out interval is rounded down to the nearest ten-microsecond increment.

Return value

WaitForTC returns STATUS_SUCCESS if the call was successful. Otherwise, the method returns an appropriate error code.

Remarks

This method should be called in only two situations:

  1. After sending a request to the hardware to stop, the miniport driver calls WaitForTC in order to wait for the DMA to complete before continuing execution.

  2. In the case of DMA hardware that is not auto-initialized, the miniport driver can call WaitForTC at any time to wait until a DMA transfer completes.

Because this method simply waits until the DMA transfer either completes or times out, callers of WaitForTC must be running at IRQL PASSIVE_LEVEL.

Requirements

Target platform

Universal

Header

Portcls.h (include Portcls.h)

IRQL

PASSIVE_LEVEL (See Remarks section.)

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft