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.

TMDSEVM6657: Example Project for SPI booting image

Part Number: TMDSEVM6657

Now that I have been able to... 1) Build and modify the IBL  2) Use the writing tools to load the IBL into the EEPROM. Now I would like to see a CCS project that is properly configured to build and create an image that can be loaded into the SPI flash.  Is there an example project like this available? (like the UART example that your boot listing from my previous question showed.)

  • Dear Customer,

    Recently, We have created an FAQ on how to flash the IBL + app binary into SPI -NOR and boot them together.

    You can use the "UART_BasicExample_C6657_c66xTestProject" as an example project to boot from IBL.

    [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? - Processors forum - Processors - TI E2E support forums

    ----

    Customer says, "Now I would like to see a CCS project that is properly configured to build and create an image that can be loaded into the SPI flash"

    While building the PDK examples using CCS 9.3, it automatically creates a image, that can be directly used for flashing and booting. At the end of the building process, the "pdkimagecreate.bat" script does  create a bootable image.

    Repeating the steps here too:

    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? on C6657 EVM using CCS 9.3

    Pre-requisite 

    1. Install processor_sdk_rtos_c665x_6_03_00_106 from http://software-dl.ti.com/processor-sdk-rtos/esd/C665x/latest/index_FDS.html
    2. Install CCS 9.3 from CCSTUDIO_9.3.0.00012 | TI.com
    3. Choose the installation directory as C:\ti

    Step1: -- Building IBL

    1. Build the IBL by following this link :- 

    2. After building the IBL, "i2crom_0x51_c6657_le.bin", IBL-binary will be generated at C:\ti\pdk_c665x_2_0_16\packages\ti\boot\ibl\src\make\bin

    Step2: -- Flashing IBL

    a. Set the DIP switch into "NO-BOOT" mode. "SW3 and SW5"

    b. Modify the eepromwriter_input.txt located at "C:\ti\pdk_c665x_2_0_16\packages\ti\boot\writer\eeprom\evmc6657l\bin"

    file_name = i2crom.bin
    bus_addr = 0x51
    start_addr = 0
    swap_data = 0

    c. Flashing steps as follows ( Flashing IBL into EEPROM using EEPROM writer)

    1. Set your C66657EVM to NO BOOT. Power on, launch target configuration in CCS, and connect to Core 0. Be sure the GEL file is used and DDR is initialized.
    2. Copy the IBLbinary you want to flash to "C:\ti\pdk_c665x_2_0_16\packages\ti\boot\writer\eeprom\evmc6657l\bin" directory.
    3. Rename the binary you copied in the previous step to “i2crom.bin”.
    4. In CCS, select Core 0 and open the Memory Browser. In the Memory Browser window, right click and select “Load Memory”
    5. Load your "i2crom.bin" to 0x0C000000. Do so by selecting i2crom.bin file and select the file type as binary. click Next, and input 0x0C000000 as Start Address
    6. Load C:\ti\pdk_c665x_2_0_16\packages\ti\boot\writer\eeprom\evmc6657l\bin\eepromwriter_evm6657l.out
    7. Run Core 0. This will program the flash memory.

    If it succeeds, the console will print “EEPROM programming completed successfully”

    Step 3 -  Booting IBL:

    1. Change the DIP switch settings into

    1. Open hyper terminal or putty and Connect the UART
    2. Observe the IBL booting with version either as 1.0.0.15 or 1.0.017

    Step 4 - Flashing app

    1. The sample binary taken for this demonstration is UART_BasicExample_C6657_c66xTestProject.

    2. Located at C:\ti\pdk_c665x_2_0_16\packages\MyExampleProjects\UART_BasicExample_C6657_c66xTestProject

    3. Build and create the app binary using CCS 9.3 

    4. App binary, UART_BasicExample_C6657_c66xTestProject.out will be located at  "C:\ti\pdk_c665x_2_0_16\packages\MyExampleProjects\UART_BasicExample_C6657_c66xTestProject\Debug\"

    5. Flashing app binary into NOR-memory using NOR-writer.

    1. Set your EVM to NO BOOT. Power on, launch target configuration in CCS, and connect to Core 0. Be sure the GEL file is used and DDR is initialized.
    2. Copy the UART-app binary you want to flash to "C:\ti\pdk_c665x_2_0_16\packages\ti\boot\writer\nor\evmc6657l\bin" directory.
    3. Rename the binary you copied in the previous step to “app.bin”.
    4. In CCS, select Core 0 and open the Memory Browser
    5. In the Memory Browser window, right click and select “Load Memory”
    6. Load your app.bin to 0x80000000. Do so by selecting app.bin for the file, click Next, and input 0x80000000 for Start Address (Type-size selected should be 32-bit)
    7. Load C:\ti\pdk_c665x_2_0_16\packages\ti\boot\writer\nor\evmc6657l\bin\norwriter_evm6657l.out
    8. Run Core 0. This will program the flash memory.

    If it succeeds, the console will print “NOR programming completed successfully”

    Step 5 - Booting IBL + app binary

    1. Change the DIP switch settings into

    1. Open hyper terminal or putty and Connect the UART
    2. Observe the IBL booting with version, 1.0.0.15 or 1.0.017
    3. Observe the IBL jumps to the UART app.

    Video -material:-

    Regards

    Shankari G