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.

How do we change the default linker command file generated by the default platform?



To whom it may concern:

For a RTSC project, the selected RTSC platform determines how the image is loaded.

For example, all sessions (.text, .bss and etc.) are laoded into local L2 for ti.platfor.tisim6498.

Is there any way that we can change the defalut linker command file in the RTSC project setting?

For example, I would like to load .text to MSMC.

Best regards,

 

Eric

 

 

 

 

  • Eric,

    Please check below some discussions below that talk about how to customize the memory sections in BIOS6 (it uses RTSC, therefore it is applicable):

    ===

    References to the BIOS6 Memory management are located in two main documents in CCSv4 help (menu Help --> Help Contents --> BIOS 6.2x.xx.xx Help):

    Section 5.1 of the Users Guide and Section 5 of the Legacy Applications Note.

    The first reference mentions the xdc.runtime.Memory online reference at RTSC-pedia wiki: http://rtsc.eclipse.org/docs-tip/Using_xdc.runtime_Memory

    It says in the second reference that the MEM module no longer exists and the memory segment and section configurations are performed directly in the platform file - typically installed in the directory below:

    C:\Program Files\Texas Instruments\xdctools_3_15_xx_xx\packages\ti\platforms\<your_board>\Platform.tci

    Changes to the default memory section allocations are done via de Program.sectMap module (as indicated in the second reference), and I found that the default memory section assignments are located in the XML file below:

    C:\Program Files\Texas Instruments\xdctools_3_15_xx_xx\packages\ti\platforms\<your_board>\package\package.doc.xml

    ===

    In the BIOS6 world memory setup is handled via RTSC platforms.

    You may refer to the RTSCpedia article http://rtsc.eclipse.org/docs-tip/Using_Targets_and_Platforms for more details.

    The XDCtools  product ships several RTSC platform packages that allows the user to get started with a given memory map.

    If you want to customize your memory map we recommend the use of the RTSC platform wizard in CCS4 to create a platform package of your own.

    Please refer to the flash demo of the platform wizard at http://rtsc.eclipse.org/docs-tip/Demo_of_the_RTSC_Platform_Wizard_in_CCSv4

    The RTSC platforms allow you to review and in some cases configure your internal device memory map. You can also specify your external memory map. You may also assign code/data/stack sections to the

    memory sections created by you. To get even more fine grained control of your map you can use a linker command file to allocate code/data to the sections defined by you in the RTSC platform.

    ===

    I am moving this thread to the BIOS forum so you might have additional comments from the experts there.

    Hope this helps,

    Rafael

  • Hi Eric,

    There are several options when it comes to controlling your memory map when you are consuming RTSC content. For your particular case I would suggest using the RTSC configuration script to assign your sections to your target region.

    For example to assign your ".text" section to "MSMC" simply add the following line to your  RTSC configuration script (*.cfg):

    Program.sectMap[".text"]="MSMC";

    The configuration will override the section placements defined by your RTSC platform. You can review the XDCtools generated  linker command file 'linker.cmd' in the 'Debug/configPkg'  folder of your RTSC project. 

    You can also use your own linker command file in your application project..  If you go this route you need to ensure that there are no conflicts between your linker command file and the one generated by XDCtools. 

    You may also refer to this post on the RTSC newsgroup  for some other options for controlling your memory map.

     

    Regards

    Amit

     

     

     

  • Amit-

    Are you saying in CCS4 there is no visual (dialog box) way to define a memory section?  Since I've been working with TI tools since the mid-1980s and I know that TI spent years and $mils since 1996 developing and documenting CCS -- and how important it is to carefully keep track of memory allocation and definition in a multi-person project -- I have to believe TI didn't take this out and we just haven't found it yet.  Please let us know where is a tutorial that shows how to add a simple memory section?  I.e. *without* modifying a .cmd file, .tci file, etc.

    Also a similar question regarding the Periodic Function Manager -- where is it in CCS4.  A google search for:

      CCS4 "Periodic Function Manager"

    turns up zero results.  What am I missing?

    -Jeff