Appendix C. RealView Profiler Hardware Troubleshooting Guide

C.1 Troubleshooting steps

Appendix C is an important resource if you are having difficulty profiling your code using RealView Trace 2 (RVT2). It contains a list of common causes for failure and actions to take to solve the issue.

C.1 Troubleshooting steps

If you have configured your hardware according to the process detailed in chapter two of this User Guide and the source code still fails to execute when running through RealView Profiler, consider the following common causes:

  1. If RealView Profiler terminates with the error message that reads "Exiting application due to unrecoverable errors please refer to the RealView Profiler user guide Appendix C hardware troubleshooting guide", one of the following issues is likely the cause.

    • The image file specified in RealView Profiler's launch configuration does not match the image on the target hardware.

      If the image specified in the launch configuration does not match the one loaded on the development board, the image will not run on the target with profiling turned on. This can often happen when using the 'Hot Connect Trace' option, but no specific error will be generated in this case. Make sure the image file matches the one on the target and try hardware profiling again.

    • Self-modifying code was used

      RealView Profiler may fail with the above error if you have self-modifying code which during runtime attempts to branch to an address that is not in the axf file. Remove any self-modifying code and try hardware profiling again.


      There is an exception to this. RealView Profiler does allow self-modifying code that installs handlers at addresses 0x0 to 0x1C at run time.

    • RealView Profiler does not support profiling through certain abort handlers. Some handlers, like the prefetch abort handler, will cause failure with the above error message.

    • The hardware target is running too fast

      RealView Profiler can only profile hardware up to 250 MHz. If your development board runs faster than this, try reducing the speed of the hardware for the purpose of profiling and try again.

    • Code contained in the image file is defective

      It is important that you verify your code is stable before running it through RealView Profiler.

    • If your hardware uses an inverted clock, make sure the 'Inverted clock' setting is used in your RVConfig file.

  2. Either the RVI or RVT2 unit may be in a bad state if RealView Profiler fails with one of the following error messages:

    • "Session handle invalid"
    • "Device state requested on connection could not be achieved"
    • "RVI timed out waiting for a response from the device"

    The RVI or RVT2 unit may be in a bad state. To fix this, try power cycling the RVI and RVT2 units. First, power down the development board, followed by the RVI and RVT2 units. Then turn the development board back on. Next, restart the RVI and RVT2 units and wait until the STAT LED on the RVI unit stays on and the Power On LED indicator on the RVT2 unit is lit. Once all of the hardware is up and running again, power cycle the development board again and try another profiling run.

  3. If RealView Profiler fails with a "No connection to the device" error message, try the following:

    • Make sure that your RVConfig file matches your development board.
    • Check the connections to and from the RVI and RVT2 units.
    • Make sure both the RVI and hardware target are powered on.

    If all of the above check out and you still see the "No connection to the device" error, it is possible that the device has not yet obtained the IP address. Try power cycling the RVI unit as described in step two.

  4. If unknown blocks appear in the RVConfig window after an auto-configuration, power cycle the RVI and RVT2 units.


    Always restart the hardware units after an auto-configuration to avoid this issue.

  5. If RealView Profiler fails with the "Device in use" error message, it may be due to an active RealView Debugger (RVD) connection to the unit. Only one connection can be used with the RVI and RVT2 units at a time, so if RVD is already connected, try closing RVD and running RealView Profiler again. This error could also occur if another instance of RealView Profiler is already connected to the device. Check to make sure you only have a single instance of RealView Profiler open.

  6. The "Bad plugin" error message indicates the specified '.rvc' configuration file is not present. Check to make sure the configuration is in the directory location specified in the RVT2 launch configuration dialog.

  7. The "Failed to parse the specified configuration file" indicates a bad or invalid '.rvc' configuration file. Create a new, valid '.rvc' configuration file and try running hardware profiling again.


    RVConfig files need to be created using RVI version 3.2 or greater. RVConfig files created using older versions of RVI are not compatible with RealView Profiler

  8. The "Buffer overflow" error message may also indicate that the hardware target is running too fast or one of the units is in a bad state. See items one and two for potential fixes for these issues.

  9. If RealView Profiler fails with the error message "Device not powered or has been disconnected", check the connections and power status of the RVI and RVT2 units.

  10. The "Error in Loading the Object Image <path> execution terminated" indicates a missing or invalid image file. Make sure the launch configuration dialog points to a valid image file and try hardware profiling again.

  11. The error message "read/write memory failure" might be caused by a bad configuration of the hardware memory map. Configure the memory map per your hardware specification to correct this issue.

  12. If your .rpa analysis files are being created with zero instructions reported and you are running on a board that requires the use of an inverted clock to capture trace at high speeds, try one of the following fixes:

    • Check to make sure the probe is securely connected to the right slot.
    • If your hardware uses an inverted clock, make sure the 'Inverted clock' setting is used in your RVConfig file.


    Many settings in the RVConfig, including timing settings, are not honored by RealView Profiler, but the 'Inverted Clock' setting is an exception to this rule.

  13. Some indirect branch errors are caused by an application writing the vector table as part of the bootstrap. Due to limitations in some ARM breakpoint units, only a subset of writes to the vector table can be caught. If your program writes the vector table as part of the setup, make sure that the final write to the vector table occurs at one of the following locations:

    • 0x08 (SVC)
    • 0x18 (IRQ)


    If your application writes the vector table, it is advised that two NOPs are appended after the vector table write to avoid misreporting links in the call chain for certain targets.

If you are having an issue with hardware profiling not listed here, try power cycling the RVI and RVT2 units as explained above and re-starting hardware profiling.

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0412A