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.

Will the labs from the "OMAP/DaVinci/Sitara System Integration using Linux" workshop work on the TMDSEVM3730?

Other Parts Discussed in Thread: AM3517, OMAP3530, DM3730

TI developed a Linux workshop called "OMAP/DaVinci/Sitara System Integration using Linux" workshop.  The labs for this workshop currently have been updated to run on the Mistral OMAP3530 EVM and the LogicPD AM3517 EVM.  [see below]

http://processors.wiki.ti.com/index.php/%28Lab_Port%29_OMAP/DaVinci/Sitara_System_Integration_using_Linux_Workshop

Will the labs developed for the OMAP3530 EVM also work unaltered on the TMDSEVM3730 eval board?  If not, are there any plans from TI to port these labs from the Linux workshop to the EMDSEVM3730 eval board as well?

Thanks,

Matt

  • I have run through the workshop labs on a DM3730 EVM and they seemed to work fine, though I don't believe I was running them at the higher frequency available to the DM3730, I suspect that would work fine as well.

  • Question:  How do I resolve the path errors and the linker errors in the DaVinci Workshop lab 13?

    The details: I am able to run the labs on the DM3730 and working through minor changes and completed lab 12.  Then lab 13 proved to be a chalenge at step 16.  I am using CCS 4.2.5 and it does not have the option for "Empty RTSC Project" and thus I used the instruction for the work arround:  http://processors.wiki.ti.com/index.php/Empty_RTSC_Project_Workaround . I am able to manually creating the 3 projects follwing exactly the directory for the workshop 
      C:\workshop\labs\lab13a_build_algo\tto\app\mixer;
      C:\workshop\labs\lab13a_build_algo\tto\app\mixer_tto_app_configuration;
      C:\workshop\labs\lab13a_build_algo\tto\codecs;

    The "tto.codecs.mixer" project built just fine. However the application project giving a lot of trouble. Since the new CCS's installed location default at  "C:\Program Files\Texas Instruments"  versus what the workshop has "c:\ti";  --  I had to work through some of the paths defined in the  "mixer_tto_app" project: Built Properties | Tool Settings | Inclue Options -- for the following:
     main.c 
       #include <xdc/std.h>                             //STT added path  "C:\Program Files\Texas Instruments\codec_engine_3_22_01_06\cetools\packages"
       #include <ti/sdo/ce/CERuntime.h>    // STT added path C:\Program Files\Texas Instruments\codec_engine_3_22_01_06\packages
       #include <tto/codecs/mixer/mixer_tto.h> //STT added path   C:\workshop\labs\lab13a_build_algo

     std.h
       #include <ti/targets/select.h>      // STT added path C:\Program Files\Texas Instruments\xdctools_3_22_01_21\packages

     Then when I finally get pass the compiler, I got the following linker error:

      undefined                          first referenced
      symbol                                in file    
     ---------                          ----------------
     _CERuntime_init                    ./main.obj     
     _Engine_close                      ./main.obj     
     _Engine_open                       ./main.obj     
     _UNIVERSAL_control                 ./main.obj     
     _UNIVERSAL_create                  ./main.obj     
     _UNIVERSAL_delete                  ./main.obj     
     _UNIVERSAL_process                 ./main.obj     
     _ti_sdo_ce_osal_Memory_contigAlloc ./main.obj

     It seems like the is a missing path to the library but I could not figure it out where is the library?

    Thanks for your help in advanced.

    [6/15/12]  --  I built the "mixer_tto_app_configuration" project and this is the error message display on the Console: Please dicipher the error message below:

    **** Build of configuration Debug for project mixer_tto_app_configuration ****
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    subdir_rules.mk:17: warning: overriding commands for target `configPkg/compiler.opt'
    subdir_rules.mk:7: warning: ignoring old commands for target `configPkg/compiler.opt'
    'Building file: ../mixer_tto_app_configuration.cfg'
    'Invoking: XDCtools'

    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/xs" --xdcpath="C:/Program Files/Texas Instruments/codec_engine_3_22_01_06/packages;C:/Program Files/Texas Instruments/bios_6_32_02_39/packages;C:/workshop/labs/lab13a_build_algo;C:/Program Files/Texas Instruments/codec_engine_3_22_01_06/examples;C:/Program Files/Texas Instruments/codec_engine_3_22_01_06/cetools/packages;C:/Program Files/Texas Instruments/ipc_1_23_02_27/packages;C:/Program Files/Texas Instruments/bios_6_32_02_39/packages;C:/Program Files/Texas Instruments/xdais_7_10_00_06/packages;C:/Program Files/Texas Instruments/xdais_7_10_00_06/examples;" xdc.tools.configuro -o configPkg -t ti.targets.C64P -r debug -c "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9" --tcf "../mixer_tto_app_configuration.cfg"

    js: "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: Error: can't open .tcf input file '../mixer_tto_app_configuration.tcf'

    gmake: *** [configPkg/compiler.opt] Error 1
    gmake: Target `all' not remade because of errors.
    Build complete for project mixer_tto_app_configuration

     

  • Could you also tell me how the 3 projects dependncy in lab 13a are inter related? What I have as Project | Properties | CCS Build | Dependencies -- are:

    mixer_tto_app  -- referenced Project  -->  mixer_tto_app_configuration  & tto.codecs.mixer
    mixer_tto_app_configuration  -- referenced Project  -->  tto.codecs.mixer
    tto.codecs.mixer  -- no dependency

    Regards,
    Sy

     

  • Furthermore, when I use the the source file from the solution directory to run the lab13b, it built OK on the Ubuntu environment and created the "app_debug.xv5T". But it fails at runtime. It gives me this error reporting  via teraTerm. Please tell me what is missing that cause this failure? 

    root@omap3evm:/opt/workshop# ./app_debug.xv5T
    Program 'universal_test': Engine 'myEngine' opened with handle = 0x4f4e8
    Program 'universal_test': ERROR: Can't open algorithm 'mixer'
    Program 'universal_test': ERROR: While processing algorithm mixer: status = -1
    MYALG process function failed with status = 0xffffffff, extendedError = 0x0
    Program 'universal_test': ERROR: Algo 'mixer' control call failed; rStatus=0xfff
    fffff
    Program 'universal_test': Function main() now exiting.
    root@omap3evm:/opt/workshop#

  • Sy Tran said:
    js: "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: Error: can't open .tcf input file '../mixer_tto_app_configuration.tcf'

    That seems like a pretty low-level error, i.e. is that file missing or something?  Is the name slightly different?  When you do a build all of the references are relative to the build directory (e.g. "Debug" or "Release") so ../mixer_tto_app_configuration.tcf would be in the level just above Debug/Release, e.g. typically the project root directory.

  • Brad,

    I think the file is dynamically generated as it stated in the first line of the built. I think I am have something missing or pointing to the wrong place so that this .tcf file was not built correctly.

    -------------------------

    **** Build of configuration Debug for project mixer_tto_app_configuration ****

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    subdir_rules.mk:17: warning: overriding commands for target `configPkg/compiler.opt'
    subdir_rules.mk:7: warning: ignoring old commands for target `configPkg/compiler.opt'
    'Building file: ../mixer_tto_app_configuration.cfg'
    'Invoking: XDCtools'
     ---------------------------------------
  • Sy Tran said:
    I think the file is dynamically generated as it stated in the first line of the built

    The tcf is never generated.  If you're missing the file it won't build.  I imagine the project from the workshop has a tcf.  Did you accidentally delete the file or forget to copy it over?

  • Brad,

    Below is the list of the starter files for lab13.  If all the links in the tools setup correctly, then it should generate the "mixer_tto_app_configuration.cfg".  I tried to built with CCS 4.2.5.  I also tried with CCS 4.2.4 on a different machine that install CCS under c:\ti directory to map with the path in the workshop. One caveat different from the workshop installation is both of these CCS installations have "codec-engine_2_25_05_16"  but no "\cetools" subdirectory.  I had to nabually install "codec_engine_3_22_01_06" which has the subdirectory "\codec_engine_3_22_01_06\cetools" and then make a the path update manually.  I suspect that the issue might be in my built file "xdcpath" - but as you noticed in the error output, it reports the path correctly with the newer codec_engine_...

    ----------------------

     Directory of C:\OMAP3530_TTO_Workshop\labs\lab13a_starter_files
    06/18/2012  02:21 PM    <DIR>          .
    06/18/2012  02:21 PM    <DIR>          ..
    04/26/2012  06:29 PM    <DIR>          app
    04/26/2012  06:29 PM    <DIR>          codecs
    04/26/2012  06:29 PM    <DIR>          config
                   0 File(s)              0 bytes

     Directory of C:\OMAP3530_TTO_Workshop\labs\lab13a_starter_files\app
    04/26/2012  06:29 PM    <DIR>          .
    04/26/2012  06:29 PM    <DIR>          ..
    01/17/2011  02:50 PM            11,911 main.c
                   1 File(s)         11,911 bytes

     Directory of C:\OMAP3530_TTO_Workshop\labs\lab13a_starter_files\codecs
    04/26/2012  06:29 PM    <DIR>          .
    04/26/2012  06:29 PM    <DIR>          ..
    10/26/2010  10:03 PM             2,713 mixer_process_function.c
                   1 File(s)          2,713 bytes

     Directory of C:\OMAP3530_TTO_Workshop\labs\lab13a_starter_files\config
    04/26/2012  06:29 PM    <DIR>          .
    04/26/2012  06:29 PM    <DIR>          ..
    10/26/2010  10:03 PM            10,168 ce_test.cfg
    10/26/2010  10:03 PM            10,442 ce_test.tcf
    10/26/2010  10:03 PM               608 codec.cfg
                   3 File(s)         21,218 bytes

  • You should instead manually install the latest version from the Codec Engine 2.xx tree.  There are many dependencies under the hood.  In particular, the following components "go together":

    • Codec Engine 3.x, Sys Link 2.x, Sys BIOS 6.x
    • Codec Engine 2.x, DSP Link 1.x, DSP BIOS 5.x

    For OMAP3530 and DM3730 you will want to stay on the latter set of components.  Eventually when you migrate to DM816x (or other new device) you'll need the first set of components.  I think the migration will merit a new thread...

    For now I recommend staying with the second set of components that I listed and let's see if we can get it all working.

  • Brad,

    1 *** I download and install the codec_engine_2_26_01_09 which is shown in the workshop lab13 instruction. I got the same errors when I built the "mixer_tto_app". Below is the error output which shows the proper including path to the codec_engine

    ---------------------------
    **** Build of configuration Debug for project mixer_tto_app ****
    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    'Building file: ../main.c'
    'Invoking: Compiler'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9/bin/cl6x" -mv64+ -g --include_path="C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9/include" --include_path="C:/Program Files/Texas Instruments/codec_engine_2_26_01_09/cetools/packages" --include_path="C:/Program Files/Texas Instruments/codec_engine_2_26_01_09/packages" --include_path="C:/workshop/labs/lab13a_build_algo" --include_path="C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages" --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="main.pp" "../main.c"
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 89: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 90: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 91: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 92: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 93: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 94: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 95: warning: typedef name has already been declared (with same type)
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/std.h", line 96: warning: typedef name has already been declared (with same type)
    'Finished building: ../main.c'
    ' '
    'Building target: mixer_tto_app.out'
    'Invoking: Linker'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9/bin/cl6x" -mv64+ -g --diag_warning=225 --abi=coffabi -z -m"mixer_tto_app.map" --warn_sections -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9/lib" -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9/include" --reread_libs --rom_model -o "mixer_tto_app.out" "./main.obj" -l"libc.a"
    <Linking>
    warning: creating ".stack" section with default size of 0x400; use the -stack
    option to change the default size
    warning: creating ".sysmem" section with default size of 0x400; use the -heap
    option to change the default size
    
    
    undefined first referenced
    symbol in file
    --------- ----------------
    _CERuntime_init ./main.obj
    _Engine_close ./main.obj
    _Engine_open ./main.obj
    _Memory_contigAlloc ./main.obj
    _UNIVERSAL_control ./main.obj
    _UNIVERSAL_create ./main.obj
    _UNIVERSAL_delete ./main.obj
    _UNIVERSAL_process ./main.obj
    
    
    error: unresolved symbols remain
    error: errors encountered during linking; "mixer_tto_app.out" not built
    
    
    >> Compilation failure
    gmake: *** [mixer_tto_app.out] Error 1
    gmake: Target `all' not remade because of errors.
    Build complete for project mixer_tto_app

    ----------------------

    2 *** Although the workshop did not explicitly instructed to built the "mixer_tto_app_configuration" project, but these are the errors I got when I built it:

    **** Build of configuration Debug for project mixer_tto_app_configuration ****

    C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    subdir_rules.mk:17: warning: overriding commands for target `configPkg/compiler.opt'
    subdir_rules.mk:7: warning: ignoring old commands for target `configPkg/compiler.opt'
    'Building file: ../mixer_tto_app_configuration.cfg'
    'Invoking: XDCtools'
    "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/xs" --xdcpath="C:/Program Files/Texas Instruments/codec_engine_2_26_01_09/packages;C:/Program Files/Texas Instruments/bios_5_41_10_36/packages;C:/workshop/labs/lab13a_build_algo;C:/Program Files/Texas Instruments/codec_engine_2_26_01_09/examples;C:/Program Files/Texas Instruments/codec_engine_2_26_01_09/cetools/packages;C:/Program Files/Texas Instruments/ipc_1_23_02_27/packages;C:/Program Files/Texas Instruments/bios_6_32_02_39/packages;C:/Program Files/Texas Instruments/xdais_7_10_00_06/packages;C:/Program Files/Texas Instruments/xdais_7_10_00_06/examples;" xdc.tools.configuro -o configPkg -t ti.targets.C64P -r debug -c "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/C6000 Code Generation Tools 7.2.9" --tcf "../mixer_tto_app_configuration.cfg"
    js: "C:/Program Files/Texas Instruments/xdctools_3_22_01_21/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: Error: can't open .tcf input file '../mixer_tto_app_configuration.tcf'
    gmake: *** [configPkg/compiler.opt] Error 1
    gmake: Target `all' not remade because of errors.
    Build complete for project mixer_tto_app_configuration
    --------------------------
    3 *** The  tool  generated an empty with a 0 byte  "mixer_tto_app_configuration.cfg" file which causes the  "mixer_tto_app_configuration" project to fail. Hence I suspect also caused the 
    "mixer_tto_app" to fail - which has a dependencies on the *_configuration project & the tt.codecs.mixer project.
     
    Can I get a copy of the "mixer_tto_app_configuration.cfg" file? And can I get the printout for the expected message when things a built correctly?
  • It's hard to tell exactly what's going wrong without your actual project. That said, here's a couple of things to look at: (Note, I don't have any experience with Codec Engine (CE) version 3.x or XDC  3.22. Speaking from experience, different library versions can be significant.)

    Looking at your first build problem, you've got a version issue. The project we built for the workshop was based on DSP/BIOS 5.xx, which uses a BIOS configuration file with the .tcf extension. In your case, though, you're building the same project using SYS/BIOS 6.32, which uses a different configuration file format.

    At least for getting started, I would recommend using the package versions we used in the lab instructions:  CE 2.26, XDC 3.20,  DSP/BIOS 5.41. These should work fine for the DM3730. At some point in the future, when you move to a new processor, you'll need to upgrade to the later versions of these libraries ... but it might be better to tackle that after getting a bit more experience.

    Other than the RTSC package repositories specified in the lab directions, you shouldn't need to add any others. The directories added to the #include statements should provide the proper references that are needed. Basically, the package repository paths are automatically added to the build settings (once we've added them in the GUI); the #include statements (such as "ti/sdo/ce/CERuntime.h") provide the necessary reference from the root of the package. This is pretty standard style for RTSC builds --- although, this is one of those things that occassionally gets tweaked between package versions. I haven't analyzed the differences between CE 2.26 and 3.22, but it wouldn't surprise me if things were modified a bit with all the changes implemented in v3.xx.

    As a side note, the latest versions of CCS v4.2x changed the new project wizard somewhat. When I built the project again tonight (with a more recent version than we were using last summer), it didn't offer to let me build a configuration project. Though, I was able to add the configuration files (.cfg, .tcf) directly to my application project. In a way, this was a bit cleaner (i.e. more simple) that it was in earlier versions of CCSv4.

    Finally, I so much dislike putting spaces in tool paths, which is why we installed CCSv4 into the "C:\TI" directory. (BTW, I think this is actually the default for CCSv5.) Even so, I don't think the installation differences should make much of a change to these projects - other than the reference to the BIOS package path we need to include to our app project..

  • Sy Tran said:

    mixer_tto_app  -- referenced Project  -->  mixer_tto_app_configuration  & tto.codecs.mixer
    mixer_tto_app_configuration  -- referenced Project  -->  tto.codecs.mixer
    tto.codecs.mixer  -- no dependency

    Actually, if I remember correctly, the mixer_tto_app project just referenced the configuration project - which included the references to the tto.codecs.mixer package (i.e. library). As I mentioned in my earlier email, the later versions of CCS v4.2x don't force you to create a separate configuration project. (In fact, they didn't even give me the option when I tried it tonight.) Effectively, the configuration source files (.tcf and .cfg) can now be included right into the application project.

  • I didn't see Brad's responses until just now. It appears he and I are stating the same thing. You need to be using different versions of the Codec Engine, XDC, and BIOS libraries. At least, this is the case when using the files we provided for the lab exercises.

    The TCF file is not autogenerated, we provide this file as part of the application starter files. It is designed to work with BIOS v5, so it's no surprise you're getting an error trying to build it with later versions of those library packages.

    ---

    Furthermore, when I use the the source file from the solution directory to run the lab13b, it built OK on the Ubuntu environment and created the "app_debug.xv5T". But it fails at runtime. It gives me this error reporting  via teraTerm. Please tell me what is missing that cause this failure? 

    root@omap3evm:/opt/workshop# ./app_debug.xv5T
    Program 'universal_test': Engine 'myEngine' opened with handle = 0x4f4e8
    Program 'universal_test': ERROR: Can't open algorithm 'mixer'

    With regards to you last issue, there just isn't enough info to tell what's causing the problem. It appears the Engine is being opened, but that the algorithm isn't being created -- which means everythihg else after that will fail. The most common error is that the string name for the codec, between the ARM and DSP, don't match. But it's hard to tell without more information about your build environment.

    -Scott

  • Thank you to Scott Specker and Brad Griffis for your helps.

    Problem solved. The problem turn out to be there is a bug in the new xdctool 3_22_01_21 as described here:

    https://bugs.eclipse.org/bugs/show_bug.cgi?id=366475.

    1. Check this forum thread for the workaround http://e2e.ti.com/support/embedded/bios/f/355/t/151321.aspx,

    2. Or use the same workshop's xdctool version  "xdctools_3_20_3_63". Follow this link and install it to C:\ti

    Scott also made a new Lab13a instruction for me to test. I think this new instruction is simpler and less error prone for the beginners. I hope he will put it into the new workshop release.
    Regards,
    Sy