# HG changeset patch # User fturovic # Date 1282157033 18000 # Node ID 49624691da341ce67dd1baed8857b4a2935f46f1 # Parent fbc447a3ff9bb51def21ebc17864b7cee074a8d7 BUG 11654 - pulled most of the TRACE32 refs except those in stop-mode (which needs rewriting yet) diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/context_help/carbide_debug_dialogs_help.xml --- a/core/com.nokia.carbide.cpp.doc.user/html/context_help/carbide_debug_dialogs_help.xml Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/context_help/carbide_debug_dialogs_help.xml Wed Aug 18 13:43:53 2010 -0500 @@ -258,14 +258,6 @@ - - - Specify the settings for Trace32 debugging. - - - - - Specify the ROM image details. @@ -307,12 +299,6 @@ - - Specify Trace32 configuration information. - - - - Specify TRK connection information. @@ -327,14 +313,12 @@ Specify ROM image information. - Define startup options and ROM image download information. - diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/soft_attach_debug.htm Wed Aug 18 13:43:53 2010 -0500 @@ -74,18 +74,9 @@
  • In the New Launch Configuration page
    1. Enable the "Open launch configuration for additional customization of launch settings" option
    2. -
    3. Click Finish
    4. +
    5. Click Finish
  • -
  • In the Debug > Symbian OS Trace 32 > New_Configuration > Connection tab -
      -
    1. Enable the "View messages between Carbide and Trace32"
    2. -
    3. Click Debug
    4. -
    -
  • -

    If the View messages between Carbide and Trace32 option is enabled, the Console view will show the communications between the debugger and the hardware (Figure 1). If you do not see the messages, verify that the Trace32 Communications Log is the active log view.

    -

    -

    Figure 1. Debugger log showing .cmm file being used to initialize hardware

  • Once the debugger connects to the hardware it will halt the hardware at a random memory address (Figure 2). Press Resume in the Debug view to begin debugging.
  • Figure 2. Debugger stopping at a random address using soft attach

    diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug.htm Wed Aug 18 13:43:53 2010 -0500 @@ -15,7 +15,7 @@
  • Create project or Import the project's bld.inf file into Carbide.c++
  • Specify your ROM build settings for the selected project
  • Build your Project with the ARMV5 Debug Build Configuration
  • -
  • Create a launch configuration for Trace32
  • +
  • Create a launch configuration
  • Launch the debugger
  • With stop mode debugging you can use the Carbide.c++ IDE and a JTAG interface to communicate between the debugger and a board to debug any target type within the Symbian OS.

    @@ -28,7 +28,6 @@
    Related Tasks
    diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_jtag.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_jtag.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_jtag.htm Wed Aug 18 13:43:53 2010 -0500 @@ -1,49 +1,49 @@ - - - - - -Stop Mode On-Device Debugging - - - -

    Installing JTAG

    -
    -

    Install the JTAG Software

    -
    Using Lauterbach Hardware
    -
      -
    1. Program Lauterbach with Proper License
    2. -

      You will need a Trace32 (Lauterbach), a USB cable, and a Lauterbach power supply. You will need to program the Lauterbach with licenses for the particular processors you will be targeting.

      -

      Older Lauterbachs have Xscale for Lubbock and ARM9 for H2/Renesas licenses installed on them already. Newer Lauterbachs should have ARM9 for H2/Renesas and ARM11 for H4 licenses installed on them already. If you don’t have the proper license installed on the Lauterbach for the processor you want to work with, you will receive an error when launching a debug session.

      -
    3. Run the Trace32 Installer -
        -
      • Run the Setup.bat file. During installation select the following options:

        - Product Type: In-Circuit Debugger
        - ICD interface Type: USB Interface
        - Selection of license for new software: License key not necessary
        - CPU selection: ICD ARM7 ARM9 ARM10 ARM11 ICD XSCALE
      • -
      -
    4. -
    5. Install the USB Drivers
    6. -
        -
      1. Place a Trace32 CD into the host machine.
      2. -
      3. Plug in the USB connector from the Lauterbach into the host machine.
      4. -
      5. Once the host machine detects the connection, install the drivers from the CD.
      6. -
      -
    7. Copy Trace32 License File to T32 Folder
    8. -

      The newer Lauterbachs require a license file in the T32 folder. Copy the trace32 license file called license.t32 to your C:\T32 folder.

      - -
    9. Copy Trace32 Configuration File
    10. -

      For H4 board: Copy the trace32 configuration file for the non-ARM11 processor, called config_arm11.t32, to your C:\T32 folder. You can also modify the default config_arm11.t32 file. This file needs to be modified to specify the port number and also enable T32 to support debugger commands outside T32. Carbide.c++ provides specific T32 config files in the support folder. The default config file will be called carbideconfig.t32.

      -
    11. Set up the Board
    12. -

      Power up the board. You should now be able to download the image.

      -
    -
    -
    Related Tasks
    - - - - + + + + + +Stop Mode On-Device Debugging + + + +

    Installing JTAG

    +
    +

    Install the JTAG Software

    +
    Using Lauterbach Hardware
    +
      +
    1. Program Lauterbach with Proper License
    2. +

      You will need a Lauterbach, a USB cable, and a Lauterbach power supply. You will need to program the Lauterbach with licenses for the particular processors you will be targeting.

      +

      Older Lauterbachs have Xscale for Lubbock and ARM9 for H2/Renesas licenses installed on them already. Newer Lauterbachs should have ARM9 for H2/Renesas and ARM11 for H4 licenses installed on them already. If you don’t have the proper license installed on the Lauterbach for the processor you want to work with, you will receive an error when launching a debug session.

      +
    3. Run the Trace32 Installer +
        +
      • Run the Setup.bat file. During installation select the following options:

        + Product Type: In-Circuit Debugger
        + ICD interface Type: USB Interface
        + Selection of license for new software: License key not necessary
        + CPU selection: ICD ARM7 ARM9 ARM10 ARM11 ICD XSCALE
      • +
      +
    4. +
    5. Install the USB Drivers
    6. +
        +
      1. Place a Trace32 CD into the host machine.
      2. +
      3. Plug in the USB connector from the Lauterbach into the host machine.
      4. +
      5. Once the host machine detects the connection, install the drivers from the CD.
      6. +
      +
    7. Copy Trace32 License File to T32 Folder
    8. +

      The newer Lauterbachs require a license file in the T32 folder. Copy the trace32 license file called license.t32 to your C:\T32 folder.

      + +
    9. Copy Trace32 Configuration File
    10. +

      For H4 board: Copy the trace32 configuration file for the non-ARM11 processor, called config_arm11.t32, to your C:\T32 folder. You can also modify the default config_arm11.t32 file. This file needs to be modified to specify the port number and also enable T32 to support debugger commands outside T32. Carbide.c++ provides specific T32 config files in the support folder. The default config file will be called carbideconfig.t32.

      +
    11. Set up the Board
    12. +

      Power up the board. You should now be able to download the image.

      +
    +
    +
    Related Tasks
    + + + + diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_launchcfg.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_launchcfg.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_launchcfg.htm Wed Aug 18 13:43:53 2010 -0500 @@ -5,17 +5,6 @@ Stop Mode On-Device Debugging -

    Defining a Stop Mode Debug Configuration

    @@ -46,7 +35,7 @@

    Click Debug after all the preference panels have been set. The Debug window closes and the Carbide.c++ debugger begins a debugging session using the new configuration. The next time you click the Debug icon, this debug launch configuration is used to start a debug session.

  • Define Main Tab Settings
  • The Main pane shown in Figure 2 defines the project to be launched on the target device. Table 1 defines the fields.

    -

    +

    Figure 2 - Debug Window - Main Tab

    Table 1. Main pane

    @@ -55,11 +44,11 @@ - + - + @@ -75,16 +64,12 @@ - - - - @@ -124,40 +103,31 @@ - + - + +

    Target Initialization File

    +

    Memory Configuration File

    +

    Reset target at the start of each debug session

    - + - - - - - - - + - + - - diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_precond.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_precond.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/debugger/stop_mode_debug_precond.htm Wed Aug 18 13:43:53 2010 -0500 @@ -16,16 +16,12 @@
  • Install the GCCE or RVCT 2.2 or greater compiler (not included with Carbide.c++).
  • Install the TechView Devkit
  • Install Board Support Package (BSP) for your target board
  • -
  • Install JTAG software and drivers for Trace32 support
  • +
  • Install JTAG software and drivers
  • Connect JTAG interface between PC and hardware
  • Verify that your SDK or customer kit is recognized in the SDK preferences panel.
  • Build your ROM Image
  • -
    Related Tasks
    - diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_rom.htm --- a/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_rom.htm Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/html/tasks/projects/prj_debug_rom.htm Wed Aug 18 13:43:53 2010 -0500 @@ -17,9 +17,6 @@

    NOTE You cannot debug ROM DLLs using Application TRK.

    -
    Other references
    - diff -r fbc447a3ff9b -r 49624691da34 core/com.nokia.carbide.cpp.doc.user/index.xml --- a/core/com.nokia.carbide.cpp.doc.user/index.xml Wed Aug 18 13:17:03 2010 -0500 +++ b/core/com.nokia.carbide.cpp.doc.user/index.xml Wed Aug 18 13:43:53 2010 -0500 @@ -672,10 +672,6 @@ - - - -
    Explanation
    ProjectProject

    The project to associate with this debug launch configuration. Click Browse to select a different project.

    ExecutableExecutable This is the name of the executable that is linked to the project. Click Browse to select a different executable.
    Explanation
    - - +

    Trace32 Executable

    Specify the path to the Trace32 executable. The default path assumes that the Trace32 executable is installed in the default location: C:\T32\T32marm.exe.

    - - +

    Trace32 Configuration File

    Specify the path to the config.t32 file or other custom configuration file. The default path assumes that the Trace32 configuration file is installed in the default location: C:\T32\config.t32.

    For arm11 processors copy the trace32 configuration file for non-ARM11 processor (config_arm11.t32) to your C:\T32 folder and specify it in the edit box.

    @@ -95,20 +80,14 @@ PORT=20000

    - - +

    - Trace32 Initialization Script

    Specify the path to the initialization cmm file. This script will be run in T32 after connecting to T32. You can specify your own scripts for the targets used.

    - - +

    - View messages between Carbide and Trace32

    Enable to log communications with Trace32 to the console window.
    Explanation
    Break at entry pointBreak at entry point

    When checked, break at the specified entry point entered in the text field. For .EXE targets, the default entry point is set to E32Main. By default, the Break at entry point option is unchecked for all other target types.

    Target Processor Target Processor A drop down with a list of all supported processors. The process selection should help in determining the memory model. This will in turn help determine the base address and the offsets for the Symbian OS kernel aware information.
    - - - -

    Target Initialization File

    Check this box to have the debugger run an initialization script when the debug session starts. For example, if a target device requires initialization for the debugger to be able to read and write memory or registers, you can specify an initialization script here. Click Browse to select a script file using a standard file selection dialog box.

    When using T32, most of the initialization is done in the CMM script file. With other debug protocols you specify the initialization file, which can be run after connecting to the target.

    - - - -

    Memory Configuration File

    Controls whether the debugger uses a memory configuration file when a debug session starts. The Carbide debugger uses this configuration file to know which memory is accessible, readable, and writable on the target.
    - - - -

    Reset target at the start of each debug session

    Forces the Carbide IDE to reset the target at the start of each debug session. This ensures that the debugging session uses the most up-to-date program code.

    Default Instructon Set

    Default Instructon Set

    Specifies the default instruction set to use if the debugger cannot determine the processor mode in order to set breakpoints and to disassemble code. This can happen at addresses for which we have no symbolic information. The debugger uses the mode when setting breakpoints and disassembling code. The options are:

    • Auto (examine code at current PC location)
    • @@ -178,105 +148,63 @@
    Explanation
    - - +

    - Start Address

    Enter the physical address in memory where the Symbian OS start code begins execution. This address is target-specific. The address should be in hexadecimal format with the 0x prefix. For example, 0x8000000 is a valid entry.

    NOTE The address entered in this field must match the start address specified in the source code used to build the Symbian OS ROM image to be debugged. The Start address must match the Download address.

    - - +

    - Debug from Start address

    Select this option to have the debugger halt the program at the address specified in Start Address once the target initialization is done and the OS is downloaded; if the user has chosen to download the OS. You can then step through start-up code or run the target in bare-board mode.
    - - +

    - - Run from start address

    Select this option to have the debugger start the code at the address specified in Start Address once the target initialization is done. If you have breakpoints set, the debugger stops at the first breakpoint encountered. You can click the Break button to halt the device.
    - - +

    - - - Symbian ROM Log file

    Check the Parse ROM Log File option and specify the information that the debugger needs in order to show detailed stack information, set breakpoints, and show source level debugging information for ROM images. In the first text field, browse to or enter the full path and name of the log file that corresponds to the ROM image on the target device. This log file is generated by default when the ROM image is built.
    - - +

    - - Symbian OS Kit EPOC32 Directory

    Specifies the epoc32 directory in which the ROM image and log files are stored. Since the log file may not contain full paths to the ROM components on the host PC, you need to enter this epoc32 directory.

    NOTE Always include the epoc32 folder in this path.

    - - +

    - - - - Log unresolved modules

    Check this box to have the debugger output a list of components from the specified ROMBUILD log file that do not have debugger symbolic information. The list is displayed in the debugger console window at the beginning of the debug session.

    NOTE You cannot perform source-level debugging on components that do not include symbolic information.

    - - -

    - - - - - Debug non-XIP Executables

    +

    Debug non-XIP Executables

    Check this box to debug a project, or a dynamically loaded module, that is loaded from NAND-Flash or other removable media (MMC, memory stick, etc.) at run time and executed in RAM. Use this option to debug modules that work fine when executed in place as part of the ROM image, but sometimes fail when placed in NAND-Flash or other removable media.

    NOTE Selecting this option will affect debugging performance. When the debugger needs to load a module (DLL, EXE, etc.) it will stop the target, read information from it, then restart it.

    - - -

    - - - - Symbian ROM Image

    +

    Symbian ROM Image

    Controls the logging of communication with Trace32. Enable to log communications with Trace32 to the console window.
    - - +

    Download Address (hex)

    Enter the physical address in memory at which the debugger should place the ROM image. This address is target-specific. The address should be in hexadecimal format with the 0x prefix. For example, 0x000FFF00 is a valid entry.

    NOTE The address entered in this field must match the download address specified in the source code used to build the Symbian OS ROM image to be debugged. If you leave this field blank, the debugger does not download the ROM image to the device at the beginning of the debug session. The Download address must match the Start address.

    - - +

    Ask for download at the start of each debug session

    Check this box to have the debugger display a dialog box at the beginning of every debug session that lets you choose whether or not you want the debugger to download the ROM image to the device.