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.

TMS320C6657: DDR3 memory allocation when board_init included in project

Part Number: TMS320C6657

I am trying to develop a small application to test the external DDR3 memory of the C6657 processor.  I am wanting to load to / run from the NOR (SPI) memory on the TMDSEVM6657LS evaluation module.  The application is to use DSP/BIOS and simply initialize the hardware, test the DDR3 memory (i.e. read/write from the DDR3 memory) and transmit the results to the serial port.  Since there is an example project written by TI that utilizes the serial port, I was using it as a base to develop my application from, i.e. UART_BasicExample_C6657c66xExampleProject.

However, when I compile this example project, the map file shows that the compiler allocates 4000000 bytes in DDR3 memory space for something related to profiling (i.e. ti.utils.profiling.ae66 : profilingHooksC66.oe66 (.fardata:benchmarking)).  I have determined that this declaration only occurs when the board_init() function is included in the project.

I have tried to disable all settings related to the profiling but nothing I have tried has stopped this declaration from occurring.  Can you point me to the configuration that will disable this declaration?

Any help is greatly appreciated. 

Brad

  • Brad,

    >>>>>>>I am trying to develop a small application to test the external DDR3 memory of the C6657 processor.  I am wanting to load to / run from the NOR (SPI) memory on the TMDSEVM6657LS evaluation module.  The application is to use DSP/BIOS and simply initialize the hardware, test the DDR3 memory (i.e. read/write from the DDR3 memory) and transmit the results to the serial port. 

    Already, a sample project by name "platform test" exist to do internal-and-external memory test. This project is part of "processor_sdk_rtos_c665x_6_03_00_106" under "pdk_c665x_2_0_16"

    You can make use of the same program to test the DDR3.

    Attached the video on how to build and run the platform test on C6657 EVM.

    >>>I am wanting to load to / run from the NOR (SPI) memory on the TMDSEVM6657LS evaluation module.

    Yes, you can flash this "platform-test" program into NOR(SPI) memory by following the flashing instructions given in the link below.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1057566/faq-tms320c6657-how-to-flash-the-ibl-intermediate-boot-loader-into-eeprom-and-how-to-flash-the-application-binary-into-nor-how-to-boot-the-ibl-application-binary

    Revert, if have any questions....

    Regards

    Shankari G

  • I attempted to follow the instructions in the video.  However, the imported project did not compile.  (see attached log)  Any suggestions?7875.compile.log

  • Brad,

    1. Make sure you use the CCS version - 9.3

    2. In your log, it shows undefined errors about CSL . Please check and  include the path of CSL package in the project properties.

    Regards

    Shankari G

  • Thanks for getting back with me.

    • I am using CCS 9.3 and the CSL package was already included.
      1. I added an explicit reference to the CSL directory, but it still does not compile.
    • Would you be able to provide a build log from your project, so I can compare the compiler invocation statements to what my installation is doing? Or better yet a zip copy of the project you are working with?
  • Brad,

    One important thing, before building the "platform test", you have to build the "platform lib", as I have shown in the video.

    Have you built the platform-lib ? that is required for platform test...

    1. Attached the build log here,

                   1. Build log of platform lib - 

    **** Build of configuration Debug for project platform_lib_evmc6657l ****
    
    "C:\\ti\\ccs930\\ccs\\utils\\bin\\gmake" -k all 
     
    Building file: "../src/evm665x_i2c.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evm665x_i2c.d_raw" --obj_directory="src"  "../src/evm665x_i2c.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evm665x_i2c.c"
     
    Building file: "../src/evmc6657.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc6657.d_raw" --obj_directory="src"  "../src/evmc6657.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    "../src/evmc6657.c", line 315: warning #552-D: variable "mdstat" was set but never used
    Finished building: "../src/evmc6657.c"
     
    Building file: "../src/evmc665x_fpga.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_fpga.d_raw" --obj_directory="src"  "../src/evmc665x_fpga.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_fpga.c"
     
    Building file: "../src/evmc665x_gpio.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_gpio.d_raw" --obj_directory="src"  "../src/evmc665x_gpio.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_gpio.c"
     
    Building file: "../src/evmc665x_i2c_eeprom.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_i2c_eeprom.d_raw" --obj_directory="src"  "../src/evmc665x_i2c_eeprom.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_i2c_eeprom.c"
     
    Building file: "../src/evmc665x_nand.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_nand.d_raw" --obj_directory="src"  "../src/evmc665x_nand.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_nand.c"
     
    Building file: "../src/evmc665x_nor.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_nor.d_raw" --obj_directory="src"  "../src/evmc665x_nor.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_nor.c"
     
    Building file: "../src/evmc665x_phy.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_phy.d_raw" --obj_directory="src"  "../src/evmc665x_phy.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_phy.c"
     
    Building file: "../src/evmc665x_spi.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_spi.d_raw" --obj_directory="src"  "../src/evmc665x_spi.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_spi.c"
     
    Building file: "../src/evmc665x_uart.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/evmc665x_uart.d_raw" --obj_directory="src"  "../src/evmc665x_uart.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/evmc665x_uart.c"
     
    Building file: "../src/platform.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/platform.d_raw" --obj_directory="src"  "../src/platform.c"
    "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/include/platform_internal.h", line 200: warning #48-D: incompatible redefinition of macro "CSL_MDIO_0_REGS" (declared at line 1361 of "C:/ti/pdk_c665x_2_0_16/packages/ti/csl/soc/c6657/src/cslr_device.h")
    Finished building: "../src/platform.c"
     
    Building target: "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66"
    Invoking: C6000 Archiver
    "C:/ti/c6000_7.4.24/bin/ar6x" r "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66" "./src/evm665x_i2c.obj" "./src/evmc6657.obj" "./src/evmc665x_fpga.obj" "./src/evmc665x_gpio.obj" "./src/evmc665x_i2c_eeprom.obj" "./src/evmc665x_nand.obj" "./src/evmc665x_nor.obj" "./src/evmc665x_phy.obj" "./src/evmc665x_spi.obj" "./src/evmc665x_uart.obj" "./src/platform.obj" "../lib/debug/ti.platform.evm6657l.lite.lib" 
      ==>  new archive 'C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66'
      ==>  building archive 'C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66'
    Finished building target: "C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug/ti.platform.evm6657l.ae66"
     
    
    **** Build Finished ****
    

                   2. Bild log of platform test - 

    **** Build of configuration Debug for project platform_test_evmc6657l ****
    
    "C:\\ti\\ccs930\\ccs\\utils\\bin\\gmake" -k all 
     
    Building file: "../src/platform_test.c"
    Invoking: C6000 Compiler
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --include_path="C:/ti/c6000_7.4.24/include" --include_path="C:/ti/ti-cgt-c6000_8.3.2/include/libcxx" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/csl" --include_path="C:/ti/pdk_c665x_2_0_16/packages" --include_path="C:/ti/pdk_c665x_2_0_16/packages/ti/platform" --define=SOC_C6657 --diag_warning=225 --display_error_number --preproc_with_compile --preproc_dependency="src/platform_test.d_raw" --obj_directory="src"  "../src/platform_test.c"
    "../src/platform_test.c", line 733: warning #179-D: function "test_uart" was declared but never referenced
    Finished building: "../src/platform_test.c"
     
    Building target: "platform_test_evmc6657l.out"
    Invoking: C6000 Linker
    "C:/ti/c6000_7.4.24/bin/cl6x" -mv6600 --abi=eabi -g --define=SOC_C6657 --diag_warning=225 --display_error_number -z -m"platform_test_evmc6657l.map" -i"C:/ti/c6000_7.4.24/lib" -i"C:/ti/c6000_7.4.24/include" -i"C:/ti/pdk_c665x_2_0_16/packages/ti/platform/evmc6657l/platform_lib/lib/debug" --reread_libs --warn_sections --xml_link_info="platform_test_evmc6657l_linkInfo.xml" --rom_model -o "platform_test_evmc6657l.out" "./src/platform_test.obj" "../platform_utils.cmd"  -lti.platform.evm6657l.ae66 -llibc.a 
    <Linking>
    Finished building target: "platform_test_evmc6657l.out"
     
    
    **** Build Finished ****
    

    2. Attached the zip of platform test.

    This includes ".out " too... you can directly run the .out on your C6657 TI EVM

    2438.platform.zip

    ---

    Regards

    Shankari G