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.

Compiler/TMS320C6747: C674x DA830 USB with COFF output format

Part Number: TMS320C6747
Other Parts Discussed in Thread: SYSBIOS, MATHLIB

Tool/software: TI C/C++ Compiler

Hi Experts,

I am using an audio application with following tools set but i need to add USB support to run the test batch on Hardware DA830 EQ1 board 

I am able to run it with elf but i needed it in COFF. But as we know PAD omapL137 version 5.2/3.3 doesn't support COFF libs.

1) Can any one suggest how to use USB communication with COFF support in DA830 (without OMAPL137, as it supports only elf).?

As i am new to this forum, kindly bare with me. 

Note:-

1) And i got info that SYS/BIOS 3.16 doesn't support  "no module named ti.sysbios.knl.Semaphore in the package ti.sysbios.knl" so we can use higher version of BIOS 6.34.

   (but BIOS 6.74 doesn't support " ti.targets.C674 is no longer supported. Please use ti.targets.elf.C674 instead.")

2) XDC 3.16 "can't resolve name (xdc.bld.ITarget3) "  so we can use higher version of XDC 3.24 

  ( XDC 3.3 & above doesn't support COFF)

My system, Setup

1) CCS 5.3 

2) Compiler 7.4.2 with COFF  

3) SYS/BIOS 6.21 / 6.34 

4) XDAIS 6.25

5) XDC Tools 3.16 / 3.24 / 3.30/ 3.5

6) PDK omapL137  5.2 / 3.3

Issue with PDK omapL137 v5.2 or v3.3

It has only elf libs seems like, i checked the least version 3.3 as well.

Linking with library ti.drv.usb:./lib/omapl137/c674/release/ti.drv.usb.ae674
Linking with library ti.board:./lib/evmOMAPL137/c674/release/ti.board.ae674
Linking with library ti.drv.i2c:./lib/omapl137/c674/release/ti.drv.i2c.ae674
Linking with library ti.drv.uart:./lib/omapl137/c674/release/ti.drv.uart.ae674
Linking with library ti.osal:./lib/tirtos/omapl137/c674/release/ti.osal.ae674
Linking with library ti.csl:./lib/omapl137/c674/release/ti.csl.ae674

'Invoking: XDCtools'
"C:/ti/xdctools_3_24_05_48/xs" --xdcpath="C:/ti/ipc_1_00_05_60/packages;C:/ti/edma3_lld_2_12_05_30C/packages;C:/ti/xdais_7_24_00_04/packages;C:/ti/xdais_7_24_00_04/examples;C:/ti/bios_6_34_02_18/packages;C:/ti/pdk_omapl137_1_0_7/packages;C:/ti/ccsv5/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.C674 -p ti.platforms.evmDA830 -r release -b "E:/USB/yamaha/backup_THD/CCS_Projects/THD_USB/config.bld" -c "C:/ti/C6000_Code_Generation_Tools_7.4.2" "../usb.cfg"
making package.mak (because of package.bld) ...
generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
configuring usb.x674 from package/cfg/usb_p674.cfg ...
Linking with library ti.drv.usb:./lib/omapl137/c674/release/ti.drv.usb.a674
Linking with library ti.board:./lib/evmOMAPL137/c674/release/ti.board.a674
js: "C:/ti/pdk_omapl137_1_0_7/packages/ti/drv/i2c/package.xs", line 128: Error: Library not found: C:/ti/pdk_omapl137_1_0_7/packages/ti/drv/i2c/./lib/omapl137/c674/release/ti.drv.i2c.a674
gmake.exe: *** [package/cfg/usb_p674.xdl] Error 1
gmake.exe: *** Deleting file `package/cfg/usb_p674.xdl'
gmake.exe: *** [package/cfg/usb_p674.xdl] Deleting file `package/cfg/usb_p674.h'
gmake.exe: *** [package/cfg/usb_p674.xdl] Deleting file `package/cfg/usb_p674.c'
js: "C:/ti/xdctools_3_24_05_48/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
gmake: *** [configPkg/compiler.opt] Error 1
gmake: Target `all' not remade because of errors.

 Regards,

ADI RAZA

  • Looking at the recommended versions.

    With CCSv5.3, I think you should stick to BIOS 6.34 and XDCtools 3.24 which is what you got.  The link below shows a lists of BIOS and recommended tools

    http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/sysbios/

    Your error:   "C:/ti/pdk_omapl137_1_0_7/packages/ti/drv/i2c/package.xs", line 128: Error: Library not found: C:/ti/pdk_omapl137_1_0_7/packages/ti/drv/i2c/./lib/om

    Seem to be slightly cut off, but is this library there?  That's what's causing the gmake error.

    Judah

  • Hi Judah,

    Correct i have got the BIOS and XDC Tools and crosschecked with the given link as well.

    Issue is :

    I want to use COFF libraries for USB communication But the pdk_omapl137_1_0_7 seems only provide ELF libraries for USB communication. ?

    The ELF libraries (name will be ending with .ae674)

    Linking with library ti.drv.usb:./lib/omapl137/c674/release/ti.drv.usb.ae674
    Linking with library ti.board:./lib/evmOMAPL137/c674/release/ti.board.ae674
    Linking with library ti.drv.i2c:./lib/omapl137/c674/release/ti.drv.i2c.ae674
    Linking with library ti.drv.uart:./lib/omapl137/c674/release/ti.drv.uart.ae674
    Linking with library ti.osal:./lib/tirtos/omapl137/c674/release/ti.osal.ae674
    Linking with library ti.csl:./lib/omapl137/c674/release/ti.csl.ae674

    I want COFF libraries (name will be ending with .a674)

    C:/ti/pdk_omapl137_1_0_7/packages/ti/drv/i2c/./lib/omapl137/c674/release/ti.drv.i2c.a674
    gmake.exe: *** [package/cfg/usb_p674.xdl] Error 1 

    Can you suggest any other PDK or how to build pdk_omapl137_1_0_7 source code (if available) for COFF output format. ?

  • There appears to be instructions on how to rebuilt the SDK.  However, if COFF is not supported on that versoin, its not going to be there on a rebuild.
    Even if you were able to get it to build, it would never have been tested.

    http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_overview.html#directory-structure


    The only suggestion I can give you is, perhaps find a version of and older PDK which maybe can support what you are looking for? I do not know
    when support for COFF was dropped in the PDK.


    http://software-dl.ti.com/processor-sdk-rtos/esd/OMAPL137/04_02_00_09/index_FDS.html

  • Hi Judah,

    I am able to successfully build OMAPL137 PDK for COFF, but getting errors after using COFF lib in my project.

    And i have tried the least available version of PDK but it doesn't have COFF libs ti-processor-sdk-rtos-omapl13x-evm-03.03.00.04-Windows-x86-Install.exe

    Anyway i am dropping this approach as it is giving unsolvable errors. but i am sharing my approach's and results so that if anyone needed in future.

    Anyway thanks,

    Regards,

    ADI

    Steps to build .

    1) change the, XDC and BIOS and compiler version in this file  file C:\ti\pdk_omapl137_1_0_7\packages\pdksetupenv.bat

    @REM Version of XDC
    set XDC_VERSION=3_24_03_33
    set XDC_INSTALL_PATH=C:/ti/xdctools_3_24_03_33

    set BIOS_VERSION=6_34_02_18
    set BIOS_INSTALL_PATH=C:/ti/bios_6_34_02_18
    set C6X_GEN_INSTALL_PATH=C:/ti/C6000_Code_Generation_Tools_7.4.2

    1a) run pdksetupenv.bat file 

    2) run make two times, make will build for both arm and c674x with default ELF option.

    2a) make -j 30 (build for ARM and c674x with ELF option ) 

    2b) make FORMAT=COFF -j 30 ( builds for only c674x as ARM is already build in above step)

    Build will be successful 

    When using PDK COFF libs in ccs i have encountered below errors

    Errors :

    cl674 package/cfg/usb_p674.c ...
    "package/cfg/usb_p674.c", line 3005: error: identifier "CT__ti_csl_Settings_Module__startupDoneFxn" is undefined

    "package/cfg/usb_p674.c", line 3005: error: identifier "CT__ti_csl_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3005: error: expected a ")"
    "package/cfg/usb_p674.c", line 3070: error: identifier "CT__ti_drv_usb_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3070: error: identifier "CT__ti_drv_usb_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3070: error: expected a ")"

    Full Error LOG:

     

    **** Build of configuration Release for project THD_USB ****

    "C:\\ti\\ccsv5\\utils\\bin\\gmake" -k all
    'Building file: ../usb.cfg'
    'Invoking: XDCtools'
    "C:/ti/xdctools_3_25_06_96/xs" --xdcpath="C:/ti/ipc_1_25_00_04/packages;C:/ti/edma3_lld_2_12_05_30C/packages;C:/ti/pdk_omapl137_1_0_7/packages;C:/ti/ndk_3_40_01_01/packages;C:/ti/dsplib_c674x_3_4_0_2/packages;C:/ti/dsplib_c64xP_3_4_0_2/packages;C:/ti/mathlib_c674x_3_1_2_3/packages;C:/ti/uia_2_30_01_02/packages;C:/ti/ccsv5/ccs_base;C:/ti/bios_6_34_02_18/packages;" xdc.tools.configuro -o configPkg -t ti.targets.C674 -p ti.platforms.evmDA830 -r release -b "E:/USB/CCS_Projects/THD_USB/config.bld" -c "C:/ti/C6000_Code_Generation_Tools_7.4.2" "../usb.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring usb.x674 from package/cfg/usb_p674.cfg ...
    Linking with library ti.drv.usb:./lib/omapl137/c674/release/ti.drv.usb.a674
    Linking with library ti.board:./lib/evmOMAPL137/c674/release/ti.board.a674
    Linking with library ti.drv.i2c:./lib/omapl137/c674/release/ti.drv.i2c.a674
    Linking with library ti.drv.uart:./lib/omapl137/c674/release/ti.drv.uart.a674
    Linking with library ti.osal:./lib/tirtos/omapl137/c674/release/ti.osal.a674
    Linking with library ti.csl:./lib/omapl137/c674/release/ti.csl.a674
    cl674 package/cfg/usb_p674.c ...
    "package/cfg/usb_p674.c", line 3005: error: identifier "CT__ti_csl_Settings_Module__startupDoneFxn" is undefined

    "package/cfg/usb_p674.c", line 3005: error: identifier "CT__ti_csl_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3005: error: expected a ")"
    "package/cfg/usb_p674.c", line 3070: error: identifier "CT__ti_drv_usb_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3070: error: identifier "CT__ti_drv_usb_Settings_Module__startupDoneFxn" is undefined
    "package/cfg/usb_p674.c", line 3070: error: expected a ")"
    >> Compilation failure
    6 errors detected in the compilation of "package/cfg/usb_p674.c".
    gmake.exe: *** [package/cfg/usb_p674.o674] Error 1
    js: "C:/ti/xdctools_3_25_06_96/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
    gmake: *** [configPkg/compiler.opt] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****