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.

Starterware/PROCESSOR-SDK-AM335X: AM335x unable boot from SPI Flash

Other Parts Discussed in Thread: AM3354, AM3358

Tool/software: Starterware

Dear all, 

hardware:  AM3354, refer to AM3358 Starter Kit,  MX25L12835E(SPI FLASH),

sdk: AM335X_StarterWare_02_00_01_01,

boot project: refer to x:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\evmAM335x\bootloader

boot pin config: lcd_data[15:0] = 0100xxxxxx110111b, MMC0, SPI0, UART0, USB0

because the board refering to  AM3358 Starter Kit,  and the boot project (x:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\evmAM335x\bootloader)

is fit for evmAM335x, i have made some change trying to make boot file fit for evmskAM335x.

(1) compiler

(2) linker

(3) lib

(4) ignore board info examine

(5) debug from CCS, running the project,  it can read the app image which stores at  0x20000 address in the flash, and move it to DDR3 memory, 

and running on normally.  (the MLO image stores at 0x0 address in the flash)

(6)but when power on start,  the uart only shows eight 'C' s every almost 5 mins, without any debug msg


the problem confuses me for a so long time, any advice are much appreciated !

Best Regards,



  • Hi Lali, thank you for your attention, just it is, the problem is nearly the same, i am looking forward to his advice.

  • keydongle,

    So if I understand correctly, when debugging through CCS, the MLO completes and then looks for the application?
    When you see the "CCCC...." the MLO and application are both on the Winbond SPI device?

  • Hi Lali,

    the MLO and app are burned in flash, when the board power on, the console would show "CCCC...." every almost 5 mins.

    i think when debugging through CCS, the MLO should have the control, to move the app to DDR memory, and the front flow from ROM code to MLO has completed, is it right?

  • Dear All,

    I have been shifted to another platform so didn't get a chance to view posts on this forum (Sorry for that). I was using IAR, starterware 02_00_01_01, CCS ver 6 and Winbond SPI W25Q64. Changes that I have made in the IAR code is as follows

    1) Open the project located at C:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\ewarm\am335x\evmAM335x\bootloader using IAR
    2) Define symbols in the project Options as described in the figure

    3) Comment the SPI PINMUX configuration funtions used in  BlPlatformSPISetup()

    4) Rebuilt complete code, it will make "boot_ti.bin" . There is no need to change file name to MLO

    5) Run the SPI-Flash-Writer tool using CCS located in "Flash\tools\flash_writer\src\spi-flash-writer_AM335x\SPI_Flasher "

    6) On program execution it will verify the connected SPI flash and ask for the path of .bin file to be programmed.

    7) In my case file was located in C drive so I  simply write C:\boot_ti.bin at an offset of 0x0000

    8) After flashing is complete Re-execute the program and this time flash your application_ti.bin file at an offset of 0x20000 

    I hope this will work for you as well.