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.

TMS320F28377D-EP: TMS320C28377D: F021_API_F2837xD_FPU32.lib warning #10068-D: no matching section

Part Number: TMS320F28377D-EP
Other Parts Discussed in Thread: C2000WARE

Hi,

I'm developing a Loader for a custom application on Delfino  28377D and i can't resolve the warning "#10068-D: no matching section."

as a result, the section command link instruction (see .cmd file) seems to be ignored and FLASH API objects are not mapped to the expected memory zone (see .map file attached).

could you help me on this topic ?

regards

Sylvain

 SAVER_TRV_PROTOA_US101_Debug.zip

  • Sylvain,

    Did you map the flash API to flash address for load and RAM address for execution in your linker cmd file?

    If not, please do so and map it to the addresses that you want.

    Please check the linker cmd file "flash_programming_cpu1_FLASH.cmd" available at C2000Ware_3_03_00_00\device_support\f2837xd\examples\dual\flash_programming\cpu01.

    Thanks and regards,

    Vamsi

  • Hi Vamsi,

    yes the flash API is mapped to FLASH section: LASHMN          : origin = 0x0BC000, length = 0x003FF0, and should run in GRAM section: RAMGS0123           : origin = 0x00C000, length = 0x004000

    as you can see in the linker command file "saver.cmd" I attached in my previous post. 

    GROUP
    {
    RamFuncSection
    { -l F021_API_F2837xD_FPU32.lib}
    } LOAD = FLASHMN, PAGE = 0, ALIGN(4)
    RUN = RAMGS0123, PAGE = 1
    LOAD_START(_RamfuncsLoadStart),
    LOAD_SIZE(_RamfuncsLoadSize),
    LOAD_END(_RamfuncsLoadEnd),
    RUN_START(_RamfuncsRunStart),
    RUN_SIZE(_RamfuncsRunSize),
    RUN_END(_RamfuncsRunEnd)

    I have used the flash_programming_cpu01 as an example. but I still have a " #10068-D no matching section saver.cmd /SAVER_TRV_PROTOA_US101_Debug line 109 C/C++ Problem" and the librairy objects are outside the expected zone as you can see (extracted from .map file):

    00089307    00000259     F021_API_F2837xD_FPU32.lib : FlashStateMachine.obj (.text:__Fapi_setupFlashStateMachine)

    I do not understand the warning and why the linker comad file is ignored

    Sylvain

  • Sylvian,

    Not sure whether or not we both are looking at the same linker cmd.

    In the linker cmd that you shared in your first post on this thread, RAMLS2 is used for flash API and not RAMGS0123.  Below is what I see from our linker cmd file.

    GROUP
    {
    RamFuncSection
    { -l F021_API_F2837xD_FPU32.lib}

    } LOAD = FLASHMN, PAGE = 0, ALIGN(4)
    RUN = RAMLS2, PAGE = 1
    LOAD_START(_RamfuncsLoadStart),
    LOAD_SIZE(_RamfuncsLoadSize),
    LOAD_END(_RamfuncsLoadEnd),
    RUN_START(_RamfuncsRunStart),
    RUN_SIZE(_RamfuncsRunSize),
    RUN_END(_RamfuncsRunEnd)

    Also, why are you mapping code to page 1 (RAMLS2) in the above snippet?  Please move it to page 0.  

    And also use ALIGN(8) for all the flash mapped sections.

    What is the compiler version that you are using?  As you know, the latest compiler versions need you to use .TI.ramfunc section instead of ramfuncs.  Is RamFuncSection your custom section?

    Thanks and regards,

    Vamsi

  • Sylvian,

    One more thing: Check whether or not the flash API library path is added in the linker settings. Path should be mentioned at CCS project build settings -> C2000 Linker -> File Search path -> Add <dir> to library search path (--search_path, -i).

    If path is not added here, linker will issue the warning that you noticed and map flash API library to .text section.

    Thanks and regards,
    Vamsi