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.

debugging "Waiting for SFT on the OMAP-L138..." on custom L138

Other Parts Discussed in Thread: OMAP-L138, OMAPL138

I am bringing up a custom L138 board with a removable flash in SPI0.  I've created a LED test app that I can successfully load and run using slh_OMAP-L138.exe.  I've used AISgen to create a standalone image to boot from SPI0 and I have externally programmed this into the removable flash and it boots and runs as well.

I am now trying to use a customized sfh_OMAP-L138.exe to flash through SPI0 but can't get past "Waiting for SFT on the OMAP-L138...".  I believe I've done the necessary modifications outlined in http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility_for_OMAP-L138 so I'd like some advice on debugging SFT.  I've tried setting a LED at the start of DEVICE_init() but the LED is not responding so I feel SFT is not really running.  It might help if someone could explain sfh process with detail on SFT loading and booting.

Here's my command line output of an attempt to erase:

sfh_OMAP-L138.exe -erase -p COM14 -targetType OMAPL138 -flashType SPI_MEM
-----------------------------------------------------
   TI Serial Flasher Host Program for OMAP-L138
   (C) 2013, Texas Instruments, Inc.
   Ver. 1.67
-----------------------------------------------------


      [TYPE] Global erase
    [TARGET] OMAPL138
    [DEVICE] SPI_MEM
 [SPI Block] 0


Attempting to connect to device COM14...
Press any key to end this program at any time.


Get the embedded SFT image sft_OMAPL138_SPI_MEM.bin
(AIS Parse): Read magic word 0x41504954.
(AIS Parse): Waiting for BOOTME... (power on or reset target now)
(AIS Parse): BOOTME received!
(AIS Parse): Performing Start-Word Sync...
(AIS Parse): Performing Ping Opcode Sync...
(AIS Parse): Processing command 0: 0x58535901.
(AIS Parse): Performing Opcode Sync...
(AIS Parse): Loading section...
(AIS Parse): Loaded 8476-Byte section to address 0x80000000.
(AIS Parse): Processing command 1: 0x58535901.
(AIS Parse): Performing Opcode Sync...
(AIS Parse): Loading section...
(AIS Parse): Loaded 68-Byte section to address 0x8000211C.
(AIS Parse): Processing command 2: 0x58535901.
(AIS Parse): Performing Opcode Sync...
(AIS Parse): Loading section...
(AIS Parse): Loaded 772-Byte section to address 0x80002160.
(AIS Parse): Processing command 3: 0x58535906.
(AIS Parse): Performing Opcode Sync...
(AIS Parse): Performing jump and close...
(AIS Parse): AIS complete. Jump to address 0x80000000.
(AIS Parse): Waiting for DONE...
(AIS Parse): Boot completed successfully.

Waiting for SFT on the OMAP-L138...

  • It appears that the SFT code is loaded on the target but there is some initialization code (SDRAM, SPI Flash) hasn`t happened correctly due to which it is not able to write to the SPI flash. YOu might want to connect to the device using an emulator when the device is stuck in that stage and look at the SDRAM and SPI flash and PINMUX settings to ensure that everything is working well.

    Have you verified the SPI flash read write by writing a test case for your custom board? One other thing you might want to check is if the memory map used in the SFT binary matches with the components on your custom board.

    Regards,

    Rahul

  • Thanks for the quick response Rahul!

    I have not verified the SPI flash read write in a test case but I'm monitoring the spi signals and see no activity.

    How do I check the memory map of the SFT binary?

    Can you tell me if SFT only requires internal memory or does it expect to use some DDR?

  • SFT in the runs from external memory. I would recommend you to use the CCS based SPI writer first to write your boot image as it is easier to debug and modify the memory map. Please check my responses here:

    http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/p/256535/897854.aspx#897854

    Regards,

    Rahul