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.

RTOS/TI-RTOS-PROC: Hello World CCS Project on AM5728

Part Number: TI-RTOS-PROC
Other Parts Discussed in Thread: AM5728, AM5718

Tool/software: TI-RTOS

Hi forum,

I am trying to create a Hello World example on DSP1 on this board .

I am following this guide on creating a CCS project for AM5728.

The .gel file I got from PHYTEC executes fine upon debugger connection and initializes all the cores.

However, the File Loader fails with an error. It seems to be related to the linker script. I used both the Linker provided by PHYTEC and a linker file that I got from TI-RTOS-SDK with the same result shown below (address of failure was different though).

The attached .zip contains all the project files including the linker .cmd files.

Here's the CCS console output:

Cortex_M4_IPU1_C0: GEL Output: --->>> AM572x Cortex M4 Startup Sequence In Progress... <<<---
Cortex_M4_IPU1_C0: GEL Output: --->>> AM572x Cortex M4 Startup Sequence DONE! <<<---
Cortex_M4_IPU1_C1: GEL Output: --->>> AM572x Cortex M4 Startup Sequence In Progress... <<<---
Cortex_M4_IPU1_C1: GEL Output: --->>> AM572x Cortex M4 Startup Sequence DONE! <<<---
C66xx_DSP1: GEL Output: --->>> AM572x C66x DSP Startup Sequence In Progress... <<<---
C66xx_DSP1: GEL Output: --->>> AM572x C66x DSP Startup Sequence DONE! <<<---
C66xx_DSP2: GEL Output: --->>> AM572x C66x DSP Startup Sequence In Progress... <<<---
C66xx_DSP2: GEL Output: --->>> AM572x C66x DSP Startup Sequence DONE! <<<---
CortexA15_0: GEL Output: --->>> AM572x Cortex A15 Startup Sequence In Progress... <<<---
CortexA15_0: GEL Output: --->>> AM572x Cortex A15 Startup Sequence DONE! <<<---
CortexA15_1: GEL Output: --->>> AM572x Cortex A15 Startup Sequence In Progress... <<<---
CortexA15_1: GEL Output: --->>> AM572x Cortex A15 Startup Sequence DONE! <<<---
IcePick_D: GEL Output: Ipu RTOS is released from Wait-In-Reset. 
IcePick_D: GEL Output: Ipu SIMCOP is released from Wait-In-Reset. 
IcePick_D: GEL Output: IVAHD C66 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. 
C66xx_DSP1: File Loader: Verification failed: Values at address 0x40300000 do not match Please verify target memory and memory map.
C66xx_DSP1: GEL: File: /home/dari/Work/phytec-hello-world/Debug/hello_world.out: a data verification error occurred, file load failed.

phytec-hello-world.zip

  • Hi,

    I don't have a Phytec board, but I was able to load your code to the C66x core of my AM572x IDK board.

    If you are absolutely sure there is no code running on the A15 core, where sometimes it may prevent access to common memory areas, I then suspect it may be something to do with the GEL file of your board. 

    Unfortunately I don't know anybody that has this board here, but I will double-check. 

    Hope this helps,

    Rafael

  • desouza said:
    If you are absolutely sure there is no code running on the A15 core, where sometimes it may prevent access to common memory areas, I then suspect it may be something to do with the GEL file of your board. 

    Thanks for trying out Rafael !

    In fact, I am absolutely sure there is Linux running on A15. I didn't find any instructions on what to do in Linux running on A15 to be able to debug DSP1 from CCS :/ 

  • Hi,

    Thanks for the additional details. If you are running Linux on the A15, the basic hardware and peripherals are already initialized, therefore you should not use a GEL file at all - this will disrupt the running environment.

    In this case, in the Target Configuration File AM572X_PHYCORE_RDK.ccxml you should select the "pure" AM5728 device instead of the board. This configuration does not contain the platform GEL files.

    Given this configuration does not have the routine to release the DSP cores from reset, you may need to release them manually from the embedded Linux terminal.
    1. Boot board using prebuilt binaries.
    2. Execute command "echo on > /sys/bus/platform/devices/40800000.dsp/power/control" to force the DSP to an on state.
    3. Launch CCS using AM5718 as the SoC (i.e. no gel files) and attempt to connect to the DSP.

    Reference:
    e2e.ti.com/.../723128

    Hope this helps,
    Rafael
  • That was very helpful Rafael, the tip about not executing .gel files and going with generic AM5728 device.

    Thank you very much !