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.

RTSC configuration problem

Other Parts Discussed in Thread: TMS320F28335, TEST2

Hi,

I'm pretty new to CSS and TI hardware.

I have a standard project linked to TMS320F28335 which compiles and links fine.

this project is linked to the F28335 linker command file where all memory sections are defined.

 

I now wanted to convert the project and make use of the DSP/BIOS possibilities.

I first added a RTSC Configuration project (from the example projects) to my system and linked the original project to the RTSC project.

compiling still worked fine, but the linking provided a lot of errors mentioning memory sections that were overlapping or already assigned. So I assumed that the RTSC project had somewhere a memory configuration and thus the original link command file was in conflict with the new RTSC memory config.

I therefore added the configuration file fullbiosRta.cfg to my existing project and rebuilded the project. The linking still goes wrong. Which means that the memory configuration is somewhere hidden in the fullBiosRta.cfg file. I can't however find the documentation that points me in the direction how to correctly set up the project.

Any help is very much appreciated.

Marc

  • Hi Marc,

    The RTSC configuration process generates a linker command file (refer to the file Default/configPkg/linker.cmd  in your RTSC configuration project if you are interested in seeing the actual file) that is required to be used at application link time whenever you are trying to consume any RTSC content (like BIOS6). I think you are still using your own application linker command file that is conflicting with the the RTSC generated linker command file. I would suggest removing your application linker command file and try building the application. 

    Please note that the new project wizard also allows you to start with complete BIOS6 examples. Refer to this flash demo for steps to create a BIOS6 application using the wizard.

    Let me know if this helps.

    Regards

    Amit

     

     

     

     

  • Amit,

    I tried the demo apps and they do not always compile and link correctly.

    1. the Hello world: works fine

    2. the SWI demo: compiles and links correctly but when executing, it aborts saying that the "swi_params" was not sufficiently initiatized

    3. the "stream" demo compiles but does not link because a number of areas do not fit in the sections. Therefore I need to be able to change the sections, but I can't find the place where the sections are defined to start with !!! (I see them in the linker file, but the linker file is generated and should not be changed.

    "C:\Program Files\Texas Instruments\ccsv4\utils\gmake\gmake -k all
    'Building target: test2.out'
    'Invoking: Linker'
    "C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/bin/cl2000" --silicon_version=28 -g --diag_warning=225 --large_memory_model --float_support=fpu32 -z -m"test2.map" --warn_sections -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/lib" -i"C:/Program Files/Texas Instruments/ccsv4/tools/compiler/c2000/include" --reread_libs --rom_model -l"C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/linker.cmd" -o "test2.out"  "./stream.obj" -l"rts2800_fpu32.lib"
    <Linking>
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 150: error:
       run placement fails for object ".ebss", size 0xb0c (page 0).  Available
       ranges:
       L03SARAM     size: 0x4000       unused: 0x96         max hole: 0x8c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 154: error:
       placement fails for object ".econst", size 0x1d5 (page 0).  Available
       ranges:
       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 152: error:
       run placement fails for object ".stack", size 0x1000 (page 0).  Available
       ranges:
       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 145: error:
       placement fails for object ".args", size 0x200 (page 0).  Available ranges:

       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 139: error:
       run placement fails for object ".taskStackSection", size 0x200 (page 0).
       Available ranges:
       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 136: error:
       run placement fails for object ".cio", size 0x120 (page 0).  Available
       ranges:
       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    "C:/Users/Marc/Documents/_Personal/telescoop/prototype/workspace/test2_configuration/Default/configPkg/package/cfg/stream_p28FP_x.xdl", line 147: error:
       placement fails for object ".switch", size 0x39 (page 0).  Available ranges:
       L03SARAM     size: 0x4000       unused: 0x26         max hole: 0x1c     
    error: errors encountered during linking; "test2.out" not built

     

  • Hi Marc,

    What board are you using to run your examples?

    When you consume RTSC content the memory map is determined by the RTSC platform that you select. In the  RTSC Configuration Settings page of the new project wizard there is a combo box with the title RTSC Platform:  where you can specify your platform. The combo box will provide a pull down list of appropriate platforms. XDCtools ships a few RTSC platforms and I could successfully build the Stream example  using the platform ti.platforms.ezdsp28335 . Other examples may need some tuning of the memory sections to fit in the code/data in the platform of your choice. Refer to this  forum post  for more information on controlling the memory map for your application. For a more detailed discussion on memory map refer to this post in the RTSC-Eclipse forum. 

    For a overview of RTSC platforms refer to this article in  RTSCpedia.

     

    Hope this helps.

    Regards

    Amit 

     

  • Hi Amit,

    the compilation works fine with the "ezdsp28335" platform however provides lots of problems with the "control28335" platform.

    Although I understand that some applications can provide problems in other platforms, I could not find this being mentioned in the TI documentation. So, since I do not intend to use the EZDSP board, I went immediately to the control28335 and got stuck. Maybe this could be considered an improvement in future versions of the documentation.

    thanks for your help

    Marc

  • Marc,

    I will pass your feedback to the BIOS/IPC team.

    Regards

    Amit