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 to fill holes in memory region in BIOS application by using RTSC tool

Other Parts Discussed in Thread: TMS320C6746

Dear All,

How to fill holes in memory region in BIOS application by using RTSC tool.

  • MSR,
    are you talking about a hole within an output section, .const for example? If that's the case, you have to use Program.sectMap in your CFG script to specify the fill value, and also the memory object in which .const should be allocated. Here are the relevant links:
    http://rtsc.eclipse.org/cdoc-tip/xdc/cfg/Program.html#sect.Map
    http://rtsc.eclipse.org/cdoc-tip/xdc/cfg/Program.html#.Section.Spec

    And also an example:
    Program.sectMap[".const"] = new Program.SectionSpec();
    Program.sectMap[".const"].fill = 0x10101010;
    Program.sectMap[".const"].loadSegment = "L2SRAM";

    If you are trying to fill all the holes in a memory object, L2RAM for example, then it is a little bit more work and we can work through that if that's what you are trying to do.

  • Hi Sasha,

    we are using

    CCS5v 5.2.0.00069

    RTSC/XDCtool 3.23.03.53

    C/C++ Development tool 8.0.2.201202111925

    also we are creating package by RTSC tool with custmized memory map.

       name                          origin           length      used        unused     attr    fill
    ----------------------               --------           ---------      --------         --------      ----   --------
      IROM                         11700000    00100000  00000000  00100000  R  X
      BOOT_RAM1              11800000    00000400  00000260  000001a0  RW X
      BOOT_RAM2              11800400    00000c00  00000800  00000400  RW X
      IRAM                         11801000    0003f000   000381c7  00006e39  RW X
      L1PSRAM                  11e00000    00008000  00000000  00008000  RW X
      L1DSRAM                  11f00000     00008000  00000000  00008000  RW  
      L3_CBA_RAM             80000000   00020000  00000000  00020000  RW X
      DDR2_DATA               c0000000    00500000  00004800  004fb800  RW X
      DDR2_CODE              c0500000    00500000  000112e0  004eed20  RW X

    We want to fill(creating hole in out file)in  unused section in each memory section,

  • MSR,
    XDCtools does not offer an easy way of specifying a fill value for memory objects. You would have to copy the linker command file that XDCtools generates, add the fill attributes and then used your new edited file as a link command template.
    The linker command file that you need to copy is the file linker.cmd. It's located in Debug or Release directory of your project, in the subdirectory configPkg. When you make a copy, open the copy and add the value for the attribute 'fill'. For example:
    MEMORY
    {
        IROM (RX) : org = 0x11700000, len = 0x100000, fill = 0x10101010
        ...
    }

    Then in your CFG script, set the value of the config parameter Program.linkTemplate to the name of your new file, something like this:
    Program.linkTemplate = "../newTemplate.cmd";

    Please consult the linked documentation to find out how XDCtools searches for your new file.
    The main disadvantage of this solution is that every time you change anything in your CFG script that affects the content of the linker command script, i.e. you use a new module from a new package, or you change a section allocation, you would have to repeat these steps. You may want to do this only after you are reasonably satisfied with your configuration and don't plan to change it further.

    There is also an alternative solution. If you are using any utility to process your executable after build, you may want to check if that utility has any option for filling all memory objects. For example, hex utility has an option --fill, which does exactly what you are trying to do. It is much easier to do than the steps I laid out above.

  • Dear Sasha,

    We copied from linker.cmd file from Debug folder and fill attribute is added after that trying to build but linker errors are coming like "redefined memory region, overlaped".also linktemplate is not found in CFG script .

    and second method with hex utility by putting in build properties -> steps -> post operation

    "${CG_TOOL_HEX}.exe -b --fill=0 E:\SS4_MLB_1_10\Out\ss4_main_1_10.out -o E:\SS4_MLB_1_10\Out\ss4_main_1_10.bin" with this no effect but binary is generationg.

  • MSR,
    can you post the complete output from your console window?
    What is the exact error message for Program.linkTemplate? If you used 'linktemplate' instead of 'linkTemplate', that would case an error.

    As for the hex utility, I don't know much about it, I just know there is that option for holes. You'll have to read this document, Chapter 11 http://www.ti.com/lit/ug/spru186w/spru186w.pdf to find out how exactly to use the hex utility.

  • Sasha,

    can you please tell me more about  Program.linkTemplate. where it is located..i am using CCS5v

    This is the output from console window


    **** Build of configuration Debug for project SS4_DSP_Main ****

    C:\ti\ccsv5\utils\bin\gmake -k all
    'Building file: ../app.cfg'
    'Invoking: XDCtools'
    "C:/ti/xdctools_3_23_03_53/xs" --xdcpath="C:/ti/bios_6_33_04_39/packages;E:/SS4_MLBv9/Package;" xdc.tools.configuro -o configPkg -t ti.targets.C674 -p TMS320C6746_SS4 -r release -c "C:/ti/ccsv5/tools/compiler/c6000_7.3.4" --compileOptions "-g --optimize_with_debug" "../app.cfg"
    making package.mak (because of package.bld) ...
    generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
    configuring app.x674 from package/cfg/app_p674.cfg ...
    cl674 package/cfg/app_p674.c ...
    'Finished building: ../app.cfg'
    ' '
    'Building file: E:/SS4_MLBv9/Common/Boot_6746_A.asm'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/Boot_6746_A.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/Boot_6746_A.asm"
    "E:/SS4_MLBv9/Common/Boot_6746_A.asm", WARNING! at line 50: [W9999]
             Placing data in a code section (.nor_config_word) is discouraged. The
               data may be interpreted as code. This section will not be
               compressed.
                nop        5

    No Assembly Errors, 1 Assembly Warning
    'Finished building: E:/SS4_MLBv9/Common/Boot_6746_A.asm'
    ' '
    'Building file: E:/SS4_MLBv9/Common/Boot_6746_C.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/Boot_6746_C.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/Boot_6746_C.c"
    'Finished building: E:/SS4_MLBv9/Common/Boot_6746_C.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/Boot_6746_Init.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/Boot_6746_Init.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/Boot_6746_Init.c"
    'Finished building: E:/SS4_MLBv9/Common/Boot_6746_Init.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/DSP674x_Gpio.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/DSP674x_Gpio.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/DSP674x_Gpio.c"
    'Finished building: E:/SS4_MLBv9/Common/DSP674x_Gpio.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/DSP674x_McBSP.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/DSP674x_McBSP.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/DSP674x_McBSP.c"
    "E:/SS4_MLBv9/Common/DSP674x_McBSP.c", line 376: warning #552-D: variable "McBSPData" was set but never used
    "E:/SS4_MLBv9/Common/DSP674x_McBSP.c", line 412: warning #552-D: variable "McBSPData" was set but never used
    'Finished building: E:/SS4_MLBv9/Common/DSP674x_McBSP.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/DSP674x_SystCtrl.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/DSP674x_SystCtrl.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/DSP674x_SystCtrl.c"
    'Finished building: E:/SS4_MLBv9/Common/DSP674x_SystCtrl.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/ModbusCRC.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/ModbusCRC.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/ModbusCRC.c"
    'Finished building: E:/SS4_MLBv9/Common/ModbusCRC.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/Uart2.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/Uart2.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/Uart2.cpp"
    'Finished building: E:/SS4_MLBv9/Common/Uart2.cpp'
    ' '
    'Building file: E:/SS4_MLBv9/Common/c1649.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/c1649.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/c1649.c"
    'Finished building: E:/SS4_MLBv9/Common/c1649.c'
    ' '
    'Building file: E:/SS4_MLBv9/Common/crc.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Common/crc.pp" --obj_directory="Common" --cmd_file="./configPkg/compiler.opt"  "E:/SS4_MLBv9/Common/crc.c"
    'Finished building: E:/SS4_MLBv9/Common/crc.c'
    ' '
    'Building file: ../Application/Adc.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/Adc.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/Adc.cpp"
    'Finished building: ../Application/Adc.cpp'
    ' '
    'Building file: ../Application/DSPComm_c.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/DSPComm_c.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/DSPComm_c.cpp"
    'Finished building: ../Application/DSPComm_c.cpp'
    ' '
    'Building file: ../Application/EventIntegrator.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/EventIntegrator.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/EventIntegrator.c"
    'Finished building: ../Application/EventIntegrator.c'
    ' '
    'Building file: ../Application/FPGA.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/FPGA.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/FPGA.cpp"
    "../Application/FPGA.cpp", line 518: warning #14-D: extra text after expected end of preprocessing directive
    'Finished building: ../Application/FPGA.cpp'
    ' '
    'Building file: ../Application/FXComm.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/FXComm.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/FXComm.cpp"
    "../Application/FXComm.cpp", line 378: warning #551-D: variable "ReqDataPkt" is used before its value is set
    'Finished building: ../Application/FXComm.cpp'
    ' '
    'Building file: ../Application/GateDriveHandler.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/GateDriveHandler.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/GateDriveHandler.cpp"
    'Finished building: ../Application/GateDriveHandler.cpp'
    ' '
    'Building file: ../Application/GateDriveTask.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/GateDriveTask.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/GateDriveTask.cpp"
    "../Application/GateDriveTask.cpp", line 129: warning #552-D: variable "result" was set but never used
    'Finished building: ../Application/GateDriveTask.cpp'
    ' '
    'Building file: ../Application/Init_c.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/Init_c.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/Init_c.c"
    'Finished building: ../Application/Init_c.c'
    ' '
    'Building file: ../Application/Metering.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/Metering.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/Metering.cpp"
    "../Application/Metering.cpp", line 327: warning #179-D: variable "TLMIDIndex" was declared but never referenced
    'Finished building: ../Application/Metering.cpp'
    ' '
    'Building file: ../Application/PQ_Status.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/PQ_Status.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/PQ_Status.cpp"
    "../Application/PQ_Status.cpp", line 89: warning #552-D: variable "Return" was set but never used
    'Finished building: ../Application/PQ_Status.cpp'
    ' '
    'Building file: ../Application/SignalProcessing_c.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/SignalProcessing_c.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/SignalProcessing_c.cpp"
    'Finished building: ../Application/SignalProcessing_c.cpp'
    ' '
    'Building file: ../Application/SysParmeter.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/SysParmeter.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/SysParmeter.cpp"
    'Finished building: ../Application/SysParmeter.cpp'
    ' '
    'Building file: ../Application/Timer_c.c'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/Timer_c.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/Timer_c.c"
    "../Application/Timer_c.c", line 116: warning #179-D: variable "TransferInfo" was declared but never referenced
    'Finished building: ../Application/Timer_c.c'
    ' '
    'Building file: ../Application/Transfer.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/Transfer.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/Transfer.cpp"
    'Finished building: ../Application/Transfer.cpp'
    ' '
    'Building file: ../Application/main.cpp'
    'Invoking: C6000 Compiler'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --include_path="C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --include_path="E:/SS4_MLBv9/Project/DSP_Main/Application_Include" --include_path="E:/SS4_MLBv9/Common_Include" --display_error_number --diag_warning=225 --abi=coffabi --preproc_with_compile --preproc_dependency="Application/main.pp" --obj_directory="Application" --cmd_file="./configPkg/compiler.opt"  "../Application/main.cpp"
    'Finished building: ../Application/main.cpp'
    ' '
    'Building target: ../../../Out/ss4_main_9_0.out'
    'Invoking: C6000 Linker'
    "C:/ti/ccsv5/tools/compiler/c6000_7.3.4/bin/cl6x" -mv6740 -g --exceptions --rtti --cpp_default --display_error_number --diag_warning=225 --abi=coffabi -z -m"SS4_DSP_Main.map" --stack_size=0x2000 --warn_sections --display_error_number -i"C:/ti/ccsv5/tools/compiler/c6000_7.3.4/lib" -i"C:/ti/ccsv5/tools/compiler/c6000_7.3.4/include" --reread_libs --entry_point=_flash_prog__Fv --rom_model -o "../../../Out/ss4_main_9_0.out" -l"./configPkg/linker.cmd"  "./Application/main.obj" "./Application/Transfer.obj" "./Application/Timer_c.obj" "./Application/SysParmeter.obj" "./Application/SignalProcessing_c.obj" "./Application/PQ_Status.obj" "./Application/Metering.obj" "./Application/Init_c.obj" "./Application/GateDriveTask.obj" "./Application/GateDriveHandler.obj" "./Application/FXComm.obj" "./Application/FPGA.obj" "./Application/EventIntegrator.obj" "./Application/DSPComm_c.obj" "./Application/Adc.obj" "./Common/crc.obj" "./Common/c1649.obj" "./Common/Uart2.obj" "./Common/ModbusCRC.obj" "./Common/DSP674x_SystCtrl.obj" "./Common/DSP674x_McBSP.obj" "./Common/DSP674x_Gpio.obj" "./Common/Boot_6746_Init.obj" "./Common/Boot_6746_C.obj" "./Common/Boot_6746_A.obj" -l"libc.a" -l"rts67plus.lib" "E:/SS4_MLBv9/Common/Linker_SS4.cmd"
    <Linking>
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 4: error #10263: IRAM memory range
       has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 4: error #10264: IRAM memory range

    >> Compilation failure
       overlaps existing memory range IRAM
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 5: error #10263: IROM memory range
       has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 5: error #10264: IROM memory range
       overlaps existing memory range IROM
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 6: error #10263: L1DSRAM memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 6: error #10264: L1DSRAM memory
       range overlaps existing memory range L1DSRAM
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 7: error #10263: L1PSRAM memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 7: error #10264: L1PSRAM memory
       range overlaps existing memory range L1PSRAM
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 8: error #10263: L3_CBA_RAM memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 8: error #10264: L3_CBA_RAM memory
       range overlaps existing memory range L3_CBA_RAM
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 9: error #10263: DDR2_DATA memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 9: error #10264: DDR2_DATA memory
       range overlaps existing memory range DDR2_DATA
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 10: error #10263: DDR2_CODE memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 10: error #10264: DDR2_CODE memory
       range overlaps existing memory range DDR2_CODE
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 11: error #10263: BOOT_RAM1 memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 11: error #10264: BOOT_RAM1 memory
       range overlaps existing memory range BOOT_RAM1
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 12: error #10263: BOOT_RAM2 memory
       range has already been specified
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 12: error #10264: BOOT_RAM2 memory
       range overlaps existing memory range BOOT_RAM2
    "E:/SS4_MLBv9/Common/Linker_SS4.cmd", line 18: warning #10068-D: no matching
       section
    warning #10063-D: entry-point symbol other than "_c_int00" specified:
       "_flash_prog__Fv"
    error #10010: errors encountered during linking;
       "../../../Out/ss4_main_9_0.out" not built
    gmake: *** [../../../Out/ss4_main_9_0.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****

  • Sasha,

    Thank you for your information, we able to generating bin file with unused sections are as holes.Because of invalid path and proper linker file went wrong.

    When we are placing array in one section it is not including in in bin file but in MAP and Out file(with the help of JTAG) included. can you clarify this.

  • What is the complete command you are running to create the bin file?

    There is a warning in your build saying: "Placing data in a code section (.nor_config_word) is discouraged. The data may be interpreted as code. This section will not be    compressed." If the missing array is in that section, you may want to try to fix that warning and see if that helps.
    Also, I think this thread is not about SYS/BIOS anymore, so you may be able to get more help in the Compiler forum. I can't move the thread there, but you should be able to.

  • Sasha,

    this is the command "${CG_TOOL_HEX}.exe -b ../../../Out/ss4_main_9_0.out -o ../../../Out/ss4_main_9_0.bin"

    and also array which is declared it is not belongs to '.nor_config_word' that is placing into DDR2_DATA.

    '.nor_config_word' belongs to BOOT_RAM1 no problem with it

    here is the memory configuration..

            name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      BOOT_RAM1             11800000   00000400  00000400  00000000  RW X  0
      BOOT_RAM2             11800400   00000c00  00000c00  00000000  RW X  0
      IRAM                  11801000   0003f000  0003f000  00000000  RW X  0
      DDR2_DATA             c0000000   00500000  00500000  00000000  RW X  0
      DDR2_CODE             c0500000   00500000  00500000  00000000  RW X  0

    But except IRAM section every section filled unused section with zero. Regarding IRAM section its not taking 0x3F000 to build some part is  missing in IRAM section

    please find the attache bin file

  • MSR,
    please post the content of your MAP file, and state exactly the name of the array that is allocated in the MAP file but missing from the BIN file. Also, please move this thread to the Compiler forum because the contributors in that forum are more familiar with the linker and the hex tool.
    I am watching that forum too, and if there is any further help I can offer about this thread, I'll post there.

  • Sasha,

    Section name is DDR2_DATA, that is in bold font....8371.map.txt.