Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCSv5 Pandaboard Code Loading Error

Hi,

I have just received the XDS100v2 debugger and I am trying to load the sample Hello World program onto the pandaboard ES RevB1.

I have set up the general properties of the build as follows:

Family ARM

Variant Pandaboard_ES (ARM9)

Connection TI XDS100v2 USB Emulator

Endinness- little

Compiler Version TI v4.9.5

Output Format legacy COFF

Linker <blank>

Runtime support library <automatic>

The CCS version is CCS v5.2.1.00018

The code is :

#include <stdio.h>

/*
 * hello.c
 */
void main(void) {
    printf("Hello World!\n");
}
as presented in the example.

The application seems to build fine, generating a binary, but when trying to load to target, the following sequence is printed.

CortexA9_0: GEL Output: --->>> omap4460_memory_map_init DONE !!! <<<---
CortexA9_1: GEL Output: --->>> omap4460_startup_sequence <<<---
CortexA9_1: GEL Output: --->>> omap4430_memory_map_init DONE !!! <<<---
IcePick_D: GEL Output: Ducati RTOS is released from Wait-In-Reset.
IcePick_D: GEL Output: Ducati SIMCOP is released from Wait-In-Reset.
IcePick_D: GEL Output: IVAHD C64 is released from Wait-In-Reset.
IcePick_D: GEL Output: IVAHD ICONT1 is released from Wait-In-Reset.
IcePick_D: GEL Output: IVAHD ICONT2 is released from Wait-In-Reset.
CS_DAP_DebugSS: GEL Output: --->>> Firewalls settings <<<---
CS_DAP_DebugSS: GEL Output: --->>> GP device, no FW settings needed. <<<---
CS_DAP_DebugSS: GEL Output: ---<<< Firewalls settings >>>---
CortexA9_0: GEL Output: --->>> omap4460_startup_sequence <<<---
CortexA9_0: GEL Output: --->>> omap4460_startup_sequence <<<---
CortexA9_0: GEL Output: --->>> !!!! UNKNOWN DEVICE (0x00000002), PLEASE UPDATE GEL FILES !!!! <<<---
CortexA9_0: GEL Output: --->>> GP device <<<---
CortexA9_0: GEL Output: Reconfigure PSRAM for accessing if device type = GP
CortexA9_0: GEL Output: Set system clock to 38.4MHz
CortexA9_0: GEL Output: --->>> start FORCE VCORE1, VCORE2 and VCORE3 to 1100mV <<<---
CortexA9_0: GEL Output: --->>> PHOENIX RELEASE => (0x02), EEPROM => (0x24)  <<<---
CortexA9_0: GEL Output: --->>> PHOENIX RELEASE => (0x02), EEPROM => (0x24)  <<<---
CortexA9_0: GEL Output: --->>> end FORCE VCORE1, VCORE2 and VCORE3 to 1100mV <<<---
CortexA9_0: GEL Output: > UNKNOWN DEVICE ID_NAME: 2
CortexA9_0: GEL Output: > APPLY BY DEFAULT OPP100 settings for all cores and DDR <CortexA9_0: GEL Output: The core is in non-SECURE state.
CortexA9_0: GEL Output: --->>> omap4460_startup_sequence DONE !!!!!  <<<---
CortexA9_0: AutoRun: Target not run as the symbol "main" is not defined
CortexA9_1: GEL Output: --->>> END omap4430_startup_sequence <<<---
CortexA9_1: AutoRun: Target not run as the symbol "main" is not defined

Any ideas on what could be the issue with this setup?

Thank you.

  • Andrei Danaila,

    It is because you might have not set auto run to main.
    Goto run--> debug config
    Set auto run to main. Once code is loaded PC will point to the main function.

    Attached screen shot.

    Thanks!!

    Regards
    Sathish

  • Hi Sathish,

    Thank you for the reply, weirdly the option is already selected. Looking generated *.map file during the build there does seem to be something off with the binary:

    ******************************************************************************
                      TMS470 Linker PC v4.9.5                      
    ******************************************************************************
    >> Linked Tue Sep 11 22:41:27 2012

    OUTPUT FILE NAME:   <testPanda.out>
    ENTRY POINT SYMBOL: 0


    MEMORY CONFIGURATION

             name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      RAM                   00000000   ffffffff  00000000  ffffffff  RWIX


    SECTION ALLOCATION MAP

     output                                  attributes/
    section   page    origin      length       input sections
    --------  ----  ----------  ----------   ----------------
    .text      0    00000000    00000000     UNINITIALIZED

    .data      0    00000000    00000000     UNINITIALIZED

    .bss       0    00000000    00000000     UNINITIALIZED

    .cinit     0    00000000    00000000     UNINITIALIZED

    .pinit     0    00000000    00000000     UNINITIALIZED


    GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name

    address    name
    --------   ----
    00000000   .bss
    00000000   .data
    00000000   .text
    ffffffff   ___binit__
    00000000   ___bss__
    ffffffff   ___c_args__
    ffffffff   ___cinit__
    00000000   ___data__
    00000000   ___edata__
    00000000   ___end__
    00000000   ___etext__
    ffffffff   ___pinit__
    00000000   ___text__
    UNDEFED    _c_int00
    ffffffff   binit
    ffffffff   cinit
    00000000   edata
    00000000   end
    00000000   etext
    ffffffff   pinit


    GLOBAL SYMBOLS: SORTED BY Symbol Address

    address    name
    --------   ----
    00000000   .bss
    00000000   .data
    00000000   .text
    00000000   ___bss__
    00000000   ___data__
    00000000   ___edata__
    00000000   ___end__
    00000000   ___etext__
    00000000   ___text__
    00000000   edata
    00000000   end
    00000000   etext
    ffffffff   ___binit__
    ffffffff   ___c_args__
    ffffffff   ___cinit__
    ffffffff   ___pinit__
    ffffffff   binit
    ffffffff   cinit
    ffffffff   pinit
    UNDEFED    _c_int00

    [20 symbols]

    Any ideas?

  • I have changed the linker command file to use OMAP4460.cmd.

    The linker output now is

    ******************************************************************************
                      TMS470 Linker PC v4.9.5                      
    ******************************************************************************
    >> Linked Wed Sep 12 22:55:38 2012

    OUTPUT FILE NAME:   <testPanda.out>
    ENTRY POINT SYMBOL: 0


    MEMORY CONFIGURATION

             name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      L3_OCM_RAM            40300000   0000e000  00000000  0000e000  RWIX
      EMIF_CS0_SDRAM        80000000   10000000  00000000  10000000  RWIX
      EMIF_CS1_SDRAM        c0000000   10000000  00000000  10000000  RWIX


    SECTION ALLOCATION MAP

     output                                  attributes/
    section   page    origin      length       input sections
    --------  ----  ----------  ----------   ----------------
    .pinit     0    40300000    00000000     UNINITIALIZED

    .cinit     0    40300000    00000000     UNINITIALIZED

    .text      0    40300000    00000000     UNINITIALIZED

    .bss       0    40300000    00000000     UNINITIALIZED

    .data      0    40300000    00000000     UNINITIALIZED


    GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name

    address    name
    --------   ----
    40300000   .bss
    40300000   .data
    40300000   .text
    ffffffff   ___binit__
    40300000   ___bss__
    ffffffff   ___c_args__
    ffffffff   ___cinit__
    40300000   ___data__
    40300000   ___edata__
    40300000   ___end__
    40300000   ___etext__
    ffffffff   ___pinit__
    40300000   ___text__
    UNDEFED    _c_int00
    ffffffff   binit
    ffffffff   cinit
    40300000   edata
    40300000   end
    40300000   etext
    ffffffff   pinit


    GLOBAL SYMBOLS: SORTED BY Symbol Address

    address    name
    --------   ----
    40300000   .bss
    40300000   .data
    40300000   .text
    40300000   ___bss__
    40300000   ___data__
    40300000   ___edata__
    40300000   ___end__
    40300000   ___etext__
    40300000   ___text__
    40300000   edata
    40300000   end
    40300000   etext
    ffffffff   ___binit__
    ffffffff   ___c_args__
    ffffffff   ___cinit__
    ffffffff   ___pinit__
    ffffffff   binit
    ffffffff   cinit
    ffffffff   pinit
    UNDEFED    _c_int00

    [20 symbols]

    Which is still wrong. Any ideas on what the issue is?

  • After changing the linker, I am getting the following errors:

    **** Build of configuration Debug for project testPanda ****

    C:\ti\ccsv5\utils\bin\gmake -k all
    'Building file: ../hello.c'
    'Invoking: ARM Compiler'
    "C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" --code_state=32 --abi=eabi -me -g --include_path="C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="hello.pp"  "../hello.c"
    'Finished building: ../hello.c'
    ' '
    'Building target: testPanda.out'
    'Invoking: ARM Linker'
    "C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" --code_state=32 --abi=eabi -me -g --diag_warning=225 --display_error_number -z -m"testPanda.map" -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/lib" -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --reread_libs --warn_sections --display_error_number --rom_model -o "testPanda.out"  "./hello.obj" -l"libc.a" "../OMAP4460.cmd"
    <Linking>
    warning #10366-D: automatic library build: using library
       "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_le_eabi.lib" for the
       first time, so it must be built.  This may take a few minutes.
      -->  error: '*.obj
    ' not found
    gmake.exe[1]: *** [library] Error 1
    >> ERROR: mklib: gmake error during rtsv4_A_le_eabi.lib build
    warning #10207-D: automatic RTS selection:  resolving index library "libc.a" to

       "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_le_eabi.lib", but
    >> Compilation failure
       "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_le_eabi.lib" was not
       found
    error #10198-D: no input section is linked in
    warning #10062-D: entry-point symbol "_c_int00" undefined
    warning #10202-D: no suitable entry-point found; setting to 0
    error #10010: errors encountered during linking; "testPanda.out" not built
    gmake: *** [testPanda.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

    When I installed CCSv5 I installed all the options along with it, is there any explanation for this library to be missing?

  • Andrei Danaila said:
    Thank you for the reply, weirdly the option is already selected.

    Actually the issue is that you have that option enabled but you do NOT have a main in your application. Assuming that this is true, you should disable that option (or specify the label you wish to run to).

  • I am also having this exact issue. The reason that there is no main symbol seem to be that the linker fails as indicated by his linker output. I got something very similar:

    C:\ti\ccsv5\utils\bin\gmake -k all
    'Building target: Panda_Simulation_Test.out'
    'Invoking: ARM Linker'
    "C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" --code_state=32 --abi=ti_arm9_abi -g --diag_warning=225 --display_error_number -z -m"Panda_Simulation_Test.map" -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/lib" -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --reread_libs --warn_sections --display_error_number --rom_model -o "Panda_Simulation_Test.out" "./hello.obj" -l"libc.a" "../OMAP4460.cmd"
    <Linking>
    warning #10366-D: automatic library build: using library
    "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_be_tiarm9.lib" for the
    first time, so it must be built. This may take a few minutes.

    .

    . (cygwin path warnings about ms-dos style paths)

    .

    --> error: '*.obj
    ' not found
    gmake.exe[1]: *** [library] Error 1
    >> ERROR: mklib: gmake error during rtsv4_A_be_tiarm9.lib build
    warning #10207-D: automatic RTS selection: resolving index library "libc.a" to
    "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_be_tiarm9.lib", but
    "C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib\rtsv4_A_be_tiarm9.lib" was not
    found
    warning #10062-D: entry-point symbol "_c_int00" undefined
    warning #10202-D: no suitable entry-point found; setting to 0
    'Finished building target: Panda_Simulation_Test.out'
    ' '

    **** Build Finished ****

    So the file is missing since the initial build of it fails and the linker cannot do its job properly. No errors are reported however.

    I tried building it myself by executing:

    C:\ti\ccsv5\tools\compiler\tms470_4.9.5\lib>mklib --pattern=rtsv4_A_be_tiarm9.lib

    which fails. I don't know if that is how it is suppose to be built. 

    Any advice would be much appreciated.

    Best regards,

    Jakob

  • I found the issue for my case at:

    http://processors.wiki.ti.com/index.php/Mklib#.22CreateProcess_..._cl470_..._failed._The_system_cannot_find_the_file_specified..22

    The automatic library build procedure fails if there is a Cygwin installation on the path. Now it seems to be working.

    Best regards,

    Jakob