A.8.24. CADI::CADIMemRead()

The function reads memory values from the component. This function must be implemented to support the display of memory contents.

virtual CADIReturn_t CADI::CADIMemRead(CADIAddrComplete_t startAddress, 
                                       uint32_t unitsToRead,
                                       uint32_t unitSizeInBytes,
                                       uint8_t * data, 
                                       uint32_t * actualNumOfUnitsRead,
                                       uint8_t doSideEffects) =0;



is the starting address to begin reading from. If startAddress.overlay is CADI_NO_OVERLAY, it refers to the current overlay.


is the number of units of size unitSizeInBytes to read.


is the unit size, specified in bytes, for memory accesses.


is the data buffer that was allocated by the caller and must be big enough to hold the requested number of addresses. The target data is encoded in little endian format.


is the number of units actually read. It can be less than the number of units requested.


if this parameter is set to true, it informs the target that it must perform side effects on a read access. Such side effects might be, for example, a clear-on-read.

If the parameter is set to false, the target must always omit side effects. This is the common use case where a debug read of memory must not interfere with the target execution.


If an error occurs, CADIMemRead() must return the error position in actualNumOfUnits*. Data is assumed valid up to this position.

Copyright © 2008-2010 ARM Limited. All rights reserved.ARM DUI 0444F