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.

Compile QuickStart rCSL ARM2DSP_integration example to run within Linux userspace

Other Parts Discussed in Thread: OMAPL138, SYSBIOS

Hi, 

Without going the route of using the newer syslink. How can I compile the example from: http://processors.wiki.ti.com/index.php/QuickStartOMAPL1x_rCSL 

\quickStartOMAPL1x_rCSL\OMAPL1x\rCSL_examples\evmOMAPL138\ARM_examples\syscfg\ARM2DSP_integration_armL138

I want to be able to run this from within Linux on the OMAPL138 board without the help of code composer.

  • Hi Usman Majid,

    The example, ARM2DSP_integration_armL138 is a bare metal code ( a non-OS  code )which can only be run using CCS.

    You cannot as-such run this code on top of the linux. But you can modify it and using Arago tool chain, you can cross compile to run it on top of the linux ( i.e., on Linux user space. ) This activity requires some porting effort.

    In additon to this CSL source, there is one more package by name, "ipclite" which is part of OMAPL138_StarterWare_1_10_04_01

    This IPClite is also a non-OS code. You can refer to it for IPC communication between ARM and DSP core.

    All the best,

  • So we ended up going the Syslink route. I am able to compile the Syslink shared_memory example combined with my code, but it does not output an executable. Without the Syslink stuff, the program works perfectly fine. This is for the ARM. Can you tell me a gcc build command to build an executable with the Syslink example implemented?
    Here is the original build command that generates an executable without Syslink: arm-none-linux-gnueabi-gcc -pthread main.c -o prog -lm


    Here is the build command that will compile with Syslink, but not generate a executable: arm-none-linux-gnueabi-gcc -pthread -lm -DSYSLINK_BUILDOS_LINUX -I/home/logic/ti/ipc_1_25_01_09/packages -I/home/logic/ti/syslink_2_21_03_11/packages/ti/syslink/inc -I/home/logic/ti/syslink_2_21_03_11/packages/ti/syslink/inc/usr -I/home/logic/ti/syslink_2_21_03_11/packages/ti/syslink/inc/usr/Linux -I/home/logic/ti/syslink_2_21_03_11/packages -I/home/logic/ti/bios_6_34_03_19/packages -Wall -c -ffloat-store -MD main.c -o prog

  • Hi Usman,

    Let me forward your query to the internal team.

    Thanks for your patience.
  • I was able to get it to build by modifying the makefile for that example and inserting my code file as the app_host's preexisting ones. It will only compile the ARM side, and the DSP side will have to be compiled with the older app_host files.

  • I'm having problems compiling the dsp side, this is my output:

    logic@logic-desktop:~/ti/syslink_2_21_03_11/examples/ex01_helloworld$ make
    #
    # Making all ...
    make -C host all
    make[1]: Entering directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    #
    # Making all ...
    make PROFILE=debug app_host
    make[2]: Entering directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    make[2]: Nothing to be done for `app_host'.
    make[2]: Leaving directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    make PROFILE=release app_host
    make[2]: Entering directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    make[2]: Nothing to be done for `app_host'.
    make[2]: Leaving directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    make[1]: Leaving directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/host'
    make -C dsp all
    make[1]: Entering directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/dsp'
    #
    # Making configuro/linker.cmd ...
    /home/logic/ti/xdctools_3_23_01_43/xs --xdcpath="/home/logic/ti/syslink_2_21_03_11/packages;/home/logic/ti/bios_6_33_02_31/packages;/home/logic/ti/ipc_1_25_03_15/packages;/home/logic/ti/xdctools_3_23_01_43/packages" \
    xdc.tools.configuro -o configuro \
    -t ti.targets.elf.C674 -c /home/logic/ti/TI_CGT_C6000_7.3.3 \
    -p ti.platforms.evmOMAPL138:dsp -b ../shared/config.bld \
    -r release Dsp.cfg
    configuring Dsp.xe674 from package/cfg/Dsp_pe674.cfg ...
    js: "/home/logic/ti/ipc_1_25_03_15/packages/ti/sdo/ipc/Build.xs", line 59: XDC runtime error: ti.sysbios.BIOS: no property named 'smpEnabled'
    "/home/logic/ti/ipc_1_25_03_15/packages/ti/sdo/ipc/package.xs", line 105
    gmake: *** [package/cfg/Dsp_pe674.xdl] Error 1
    js: "/home/logic/ti/xdctools_3_23_01_43/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
    make[1]: *** [configuro/linker.cmd] Error 1
    make[1]: Leaving directory `/home/logic/ti/syslink_2_21_03_11/examples/ex01_helloworld/dsp'
    make: *** [all] Error 2
  • I was able to fix this by upgrading the version of xdc_tools
  • Hi usman,

    Glad to hear that you are able to solve the problem.