synchronize

Bring IOMemoryDescriptor and IODMACommand buffers into sync.

Declaration

virtual IOReturn synchronize(
 IOOptionBitsoptions); 

Parameters

options

Specifies the direction of the copy: kIODirectionOut copy IOMemoryDesciptor memory to any IODMACommand buffers. By default this action takes place automatically at prepare(). kIODirectionIn copy any IODMACommand buffers back to the IOMemoryDescriptor. By default this action takes place automatically at complete(). kForceDoubleBuffer copy the entire prepared range to a new page aligned buffer.

Return Value

kIOReturnNotReady if not prepared, kIOReturnBadArgument if invalid options are passed, kIOReturnSuccess otherwise.

Overview

This method should not be called unless a prepare was previously issued. If needed a caller may synchronize any IODMACommand buffers with the original IOMemoryDescriptor buffers.

See Also

Miscellaneous

- clearMemoryDescriptor

Clears the DMACommand's current memory descriptor

- cloneCommand

Creates a new command based on the specification of the current one.

- complete

Complete processing of DMA mappings after an I/O transfer is finished.

- gen32IOVMSegments

Helper function for a type checked call to genIOVMSegments(qv), for use with an IODMACommand set up with the output function kIODMACommandOutputHost32, kIODMACommandOutputBig32, or kIODMACommandOutputLittle32. If the output function of the IODMACommand is not a 32 bit function, results will be incorrect.

- gen64IOVMSegments

Helper function for a type checked call to genIOVMSegments(qv), for use with an IODMACommand set up with the output function kIODMACommandOutputHost64, kIODMACommandOutputBig64, or kIODMACommandOutputLittle64. If the output function of the IODMACommand is not a 64 bit function, results will be incorrect.

- genIOVMSegments

Generates a physical scatter/gather for the current DMA command

- getMemoryDescriptor

Get the current memory descriptor

- getPreparedOffsetAndLength

Returns the offset and length into the target IOMemoryDescriptor of a prepared IODDMACommand.

- initWithSpecification

Primary initializer for the IODMACommand class.

- OutputBig32

Output big-endian Segment32 output segment function.

- OutputBig64

Output big-endian Segment64 output segment function.

- OutputHost32

Output host natural Segment32 output segment function.

- OutputHost64

Output host natural Segment64 output segment function.

- OutputLittle32

Output little-endian Segment32 output segment function.

- OutputLittle64

Output little-endian Segment64 output segment function.

- prepare

Prepare the memory for an I/O transfer.

- prepareWithSpecification

Prepare the memory for an I/O transfer with a new specification.

- readBytes

Copy data from the IODMACommand's buffer to the specified buffer.

- setMemoryDescriptor

Sets and resets the DMACommand's current memory descriptor

- weakWithSpecification

Creates and initialises an IODMACommand in one operation if this version of the operating system supports it.

- withSpecification

Creates and initializes an IODMACommand in one operation.

- writeBytes

Copy data to the IODMACommand's buffer from the specified buffer.