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.

RTOS/TMDX654IDKEVM: OSPI flash programming fails via uniflash 4.6.0

Part Number: TMDX654IDKEVM
Other Parts Discussed in Thread: UNIFLASH,

Tool/software: TI-RTOS

Hi, 

I'm able to erase OSPI flash from EVM successfully. so the uniflash tool seems to work. 

This is my command to erase successfully (However, still don't know what maximum erase size I should take):

dslite.bat --mode processors -c COM5 -e 80000 -d 3 -o 0

__________________________________________________________________________________________

C:\ti\uniflash_4.6.0>dslite.bat --mode processors -c COM5 -e 80000 -d 3 -o 0
Executing the following command:

> C:\ti\uniflash_4.6.0\processors\ProcessorSDKSerialFlash.exe -c COM5 -e 80000 -d 3 -o 0

For more details and examples, please visit processors.wiki.ti.com/.../UniFlash_v4_Quick_Guide


----------------------------------------------------------------------------
ProcessorSDKSerialFlash CLI Tool
Copyright (C) 2017-2018 Texas Instruments Incorporated - http://www.ti.com/
Version 1.0.0.5
----------------------------------------------------------------------------
Erasing Flash....

Transferring Header information..
Header Transfer Complete!!
Flash Erase Success!

____________________________________________________________________________________________________

After erasing I'm trying to program the sbl file to address 0x0 to the OSPI flash device. I assume this should be the right address as OSPI flash boot should start at OSPI device address 0x0. Right?

This is my command to programm OSPI flash with sbl image:

________________________________________________________________________________________________________

C:\ti\uniflash_4.6.0>dslite.bat --mode processors -c COM5 -f C:\ti\SDK_RTOS_5_2_DRA65xxEVM\pdk_am65xx_1_0_3\packages\ti\boot\sbl\binary\am65xx_idk\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0
Executing the following command:
> C:\ti\uniflash_4.6.0\processors\ProcessorSDKSerialFlash.exe -c COM5 -f C:\ti\SDK_RTOS_5_2_DRA65xxEVM\pdk_am65xx_1_0_3\packages\ti\boot\sbl\binary\am65xx_idk\ospi\bin\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0

For more details and examples, please visit processors.wiki.ti.com/.../UniFlash_v4_Quick_Guide


----------------------------------------------------------------------------
ProcessorSDKSerialFlash CLI Tool
Copyright (C) 2017-2018 Texas Instruments Incorporated - http://www.ti.com/
Version 1.0.0.5
----------------------------------------------------------------------------
Flashing Image to Flash Writer..

Transferring Header information..
Header Transfer complete!

Transferring File of size 132383 bytes
File Transfer complete!
Programming Flash Device..

Flash Programming Failed!!

______________________________________________________________________________________

Any idea what he failure caused?

boot switches are all "off".

Regards, 

Thorsten

  • Thorsten,

    Please refer to video that I have shared with the customer at the end of the page on the E2E post below that shows the process of flashing OSPI using Uniflash:
    e2e.ti.com/.../758374

    This is visual representation of the instructions that we added to the software developer guide here:
    software-dl.ti.com/.../index_board.html

    I also updated my guidance using Uniflash 4.6 and Processor SDK RTOS 5.02 where the sysfw.bin was separated from the SBL/MLO:
    e2e.ti.com/.../770999

    If you are still running into issues, I can provide further guidance.

    Regards,
    Rahul
  • Hi Rahul,
    many thanks.
    I already had worked through your video. Otherwise I wouldn't be at the state to erase successful and to know how to program the sbl.tiimage file onto OSPI.

    1. Still programming "sbl_ospi_img_mcu1_0_release.tiimage" is not successful. Any other reasons you can think of programming fails?
    Boot mode is DEBUG "all switches off".

    2. I wonder why you erase just 0x10000 size. These are about 262,144 bytes. The file "sbl_ospi_img_mcu1_0_release.tiimage" takes 132,383 bytes.
    So why don't you erase space for sysfw.bin and *.appimage files as well?

    3. Please point me to the Processor SDK RTOS online doc that lists the following text "e2e.ti.com/.../770999".
    For OSPI boot, the flash offsets have changed. “sysfw.bin” needs to be programmed into OSPI flash at offset 0x40000 (new for this release), along with “sbl_ospi_img_mcu1_0_release.tiimage” at offset 0x0 (no change from previous release) and the “app” at offset 0xA0000 (was 0x80000 previous release). For details please refer Programming the OSPI flash"
    It is not here: software-dl.ti.com/.../index_release_specific.html

    4. what offset would you recommend to erase OSPI flash completely?
  • Why don't I need to make use of the "-i" option?
  • Part Number: TMDX654IDKEVM

    Tool/software: TI-RTOS

    Hi, 

    I want to boot and run my apps ".appimage" (NOT the diagnostics apps!) from SD Card. Do we have any other method as described here?

    Processor SDK RTOS

    3.2.3. Running the Diagnostic Examples

    3.2.3.1. Loading through SD Card (Default Method)

    Or would you recommend any other way for AM654IDKEVM?

    Thanks and best regards, 

    Thorsten

  • Thorsten,

    I don`t necessarily understand the question. Are you wanting to load and run a custom application using SD card. To do this other than MLO and sysfw.bin, you need to copy your application binary in Multi-core boot image format as described here:

    software-dl.ti.com/.../index_Foundational_Components.html

    If you have an image for A53 and R5 then they need to be merged together by using out2rprc and MulticoreImageGen tool as described in the section:
    "Converting ELF executables to SBL loadable image " in link provided above

    Regards,
    Rahul
  • Many thanks. I believe you understood the question. I want to run apps (e.g. C:\ti\processorSDK_RTOS_5_2\pdk_am65xx_1_0_3\packages\ti\binary\GPIO_LedBlink_TestApp\bin\am65xx_idk).

    As the link below states I will go on and copy those files to the SD Card and give a try run. I will run the out2rprc and MulticoreImageGen tool to achive the ".appimage" file.

    http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_Foundational_Components.html#id21

    1. To update the SBL with a newer version, copy the sbl image (sbl_mmcsd_img_mcu1_0_release.tiimage) to the SD card. Rename it to tiboot3.bin
    2. To update the SYSFW with a newer version, copy the system firmware image (sysfw.bin) to the SD card.
    3. Copy the generated application image(*.appimage) to the SD card. Rename it to app
  • Thorsten,

    Sorry for the delayed response. Are you still having this issue with the OSPI flashing and booting or is this resolved?

    Regards,
    Rahul
  • Hi Rahul, yes I have still all the same issues.
    Basically, we can't flash any file via uniflash and therefore not test whether apps would boot and work if programmed.
    This need to be solved next week. Otherwise we would need an online debugging session.
    Regards,
    Thorsten
  • Hi, picked the files from SDK renamed and copied. Put processor in SD Card boot mode. But no success. I assume Karthik is working on this as well. We need to sync up with his progress Monday.
    Regards,
    Thorsten
  • Thorsten,

    I believe the Uniflash issue is resolved based on offline email from Karthik.  We have also sent him the  instructions to load and flash the  application binary for GPIO LED blink and boot using OSPI boot on AM654x:

    We should be able to boot PDK GPIO example using the steps provided below:

    1. Setup PDK build environment
    2. Build GPIO example from top level PDK packages using :

    gmake gpio LIMIT_CORES=mcu1_0

    3. Output binary will be located at :

    pdk_am65xx_1_0_x\packages\ti\binary\drv_gpio_led_blink_app_tirtos\bin\am65xx\ drv_gpio_led_blink_app_tirtos_<CORE>_release.xe<ARCH>

           4     The steps to convert an .out/.xer5f/.xe53 to app is to using the instructions in section “Converting ELF executables to SBL loadable image

           5.  Flash the binaries using Uniflash steps indicate above using dslite and replace the app flashed at 0xA0000 with app created from previous step.

    .\dslite.bat --mode processors -c COM6 -f <PDK>\packages\ti\boot\sbl\binary\am65xx_evm\ospi\sbl_ospi_img_mcu1_0_release.tiimage -d 3 -o 0

    .\dslite.bat --mode processors -c COM6 -f <PDK>\packages\ti\drv\sciclient\V0\sysfw.bin -d 3 -o 40000

    .\dslite.bat --mode processors -c COM6 -f <PDK>\packages\ti\binary\ appimage -d 3 -o A0000