TMS320F280037C: how to move flash function to ram

Part Number: TMS320F280037C
Other Parts Discussed in Thread: C2000WARE, SYSCONFIG

Hi,

I am working on a project based on the F280037C device where I need to use the Flash API for erase/program operations. Since Flash API functions must execute from RAM, I am trying to move both the Flash API library functions and my Flash-related functions into RAM.

I understand how this is done in the Flash API examples provided in C2000Ware. The examples use a manually edited linker command file and define a section similar to:

GROUP
{
    .TI.ramfunc
    { -l FAPI_F28003x_EABI_v1.58.10.lib }
}
LOAD = FLASH_BANK0_SEC1,
RUN = RAMLS03,
LOAD_START(RamfuncsLoadStart),
LOAD_SIZE(RamfuncsLoadSize),
LOAD_END(RamfuncsLoadEnd),
RUN_START(RamfuncsRunStart),
RUN_SIZE(RamfuncsRunSize),
RUN_END(RamfuncsRunEnd),
ALIGN(8)

However, my project uses SysConfig, which automatically generates the linker command file. Because of this:

  1. I cannot directly edit the generated .cmd file since SysConfig overwrites it during regeneration.

  2. I am not sure how to create the equivalent RAM function section using SysConfig.

  3. I am not sure how to correctly place the Flash API library (FAPI_F28003x_EABI_v1.58.10.lib) into a RAM-executed section when using SysConfig.

My questions are:

  1. What is the recommended way to move Flash API functions to RAM in a SysConfig-based project?

  2. Can this be done entirely through SysConfig?

  3. Is there any example project or documentation that shows how to configure RAM functions and Flash API library placement using SysConfig?

  4. If a custom linker command file is required, what is the recommended approach to avoid conflicts with the SysConfig-generated linker file?

Any guidance or example would be greatly appreciated.

Thank you.