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.

PROCESSOR-SDK-AM62P: Build TI boot3 start up error

Part Number: PROCESSOR-SDK-AM62P
Other Parts Discussed in Thread: AM62P5, SYSCONFIG

Tool/software:

Hello team

I followed the guild from 3.1.1.1. General Information — Processor SDK AM62Px Documentation  to build the tiboot3.

the make process is successful , no change of  configuration board-support/ti-u-boot-2025.01+git/configs/am62px_evm_r5_defconfig,  but the EVM cannot start with this tiboot3 image. 

how can I do the build boot able image?

one more question about the build uboot , how to build the fastest boot image. 

the below log is tiboot3 build by Ti engineer, tispl and uboot build by us.  to load the tiboot3 and start splash about 2s. it's toooo long for us.

U-Boot SPL 2025.01-00406-gcd91d7360181 (Mar 25 2025 - 16:14:37 +0000)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
SPL initial stack usage: 17056 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Starting ATF on ARM64 core...

NOTICE: BL31: v2.12.0(release):11.00.08-1-gb11beb2b6-dirty
NOTICE: BL31: Built : 12:35:58, Mar 24 2025

U-Boot SPL 2025.01-gcd91d7360181-dirty (Jul 31 2025 - 16:27:31 +0800)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
SPL initial stack usage: 1904 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed


U-Boot 2025.01-gcd91d7360181-dirty (Jul 31 2025 - 16:27:31 +0800)

SoC: AM62PX SR1.0 HS-FS
Model: Texas Instruments AM62P5 SK
DRAM: 2 GiB (total 8 GiB)
Core: 86 devices, 27 uclasses, devicetree: separate
MMC: mmc@fa10000: 0, mmc@fa00000: 1
Loading Environment from nowhere... OK
In: serial
Out: serial
Err: serial

  • Hi Pu Jia,

    Can you use the top level makefile to build the u-boot following the instructions and see if that help you create a bootimage tiboot3.bin image.

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/latest/exports/docs/linux/Overview/Top_Level_Makefile.html

    Upon downloading the processor sdk installer binary, issuing make u-boot should be able to create the tiboot3.bin in output directory/r5 folder.

    Let me know how it goes.

    Best Regards,

    Suren

  • Yes I use this guide to build the R5 boot loader. make all && make u-boot-r5. now I tried to change the defconfig back to default, the img is working, and I tried to build the uboot with early splash, can you please provide the guide? 

  • Since default u-boot is working fine, I assume something is not correct in the way you are adding splash support in u-boot.

    Please provide exact steps you did to add early splash support in u-boot.

    Also please follow the instructions as mentioned in the below link:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62PX/09_02_01_09/exports/docs/linux/Foundational_Components/U-Boot/UG-Splash-Screen.html

    Best Regards,

    Suren

  • Hello, 

    Got it, so the early splash is in A53 spl,  if it possible to do it in R5 SPL?

  • Hi Pu Jia,

    Any reason you are using the SPL boot flow and wanting to do splash in R5 SPL? We already have support for DSS on R5 SPL in our SBL boot flow, which will allow to do early splash.

    Please check the below link:

    https://www.ti.com/lit/an/spradk8/spradk8.pdf

    SBL boot flow:

    https://software-dl.ti.com/mcu-plus-sdk/esd/AM62PX/11_01_00_16/exports/docs/api_guide_am62px/index.html

    https://www.ti.com/tool/download/MCU-PLUS-SDK-AM62P/11.01.00.16

    Best Regards,

    Suren

  • Hello , Suren Porwar,

    Now we plan to start EVM using Falcon mode followed by MCU SDK,

    and I want to add the bmp splash in MCU_R5_NORTOS can you guide me to do this?

  • Hi Pu Jia,

    Please follow the instructions provided in the MCU+SDK documentation.

    https://software-dl.ti.com/mcu-plus-sdk/esd/AM62PX/11_01_00_16/exports/docs/api_guide_am62px/EXAMPLES_DRIVERS_DSS_DISPLAY_SHARE.html

    Let me know if you have any issues.

    Best Regards,

    Suren

  • Hello, Suren Porwar

    The demo is running fine, but I have some questions:

    1. The demo application is to build a stage2  SBL loader ?

    2. There still have SPLASH logo before the icon flashing, when and how this splash load?

    3. when I flash it to emmc, it cannot load the OS core. there some strange is load from emmc in stage 1 but load stage 2 in OSPI, and then I don't know how it's going....

    ### ERROR ### Please RESET the board ###
    [BOOTLOADER_PROFILE] Boot Media       : eMMC
    [BOOTLOADER_PROFILE] Boot Media Clock : 200.000 MHz
    [BOOTLOADER_PROFILE] Boot Image Size  : 1310 KB
    [BOOTLOADER_PROFILE] Cores present    :
    wkup-r5f0-0
    [BOOTLOADER PROFILE] System_init                      :      38786us
    [BOOTLOADER PROFILE] Board_init                       :          0us
    [BOOTLOADER PROFILE] Drivers_open                     :          0us
    [BOOTLOADER PROFILE] SBL Drivers_open                 :      20410us
    [BOOTLOADER PROFILE] Board_driversOpen                :          0us
    [BOOTLOADER PROFILE] App_loadSelfcoreImage            :      22789us
    [BOOTLOADER_PROFILE] SBL Total Time Taken             :      81987us
    
    Image loading done, switching to application ...
    Starting 2nd stage bootloader
    erver..... PASSED
    Configure DSS region firewall... DONE !!!
    Configure DSS framebuffer region firewall... DONE !!!
    [BOOTLOADER_PROFILE] Boot Media       : FLASH
    [BOOTLOADER_PROFILE] Boot Media Clock : 166.667 MHz
    [BOOTLOADER_PROFILE] Boot Image Size  : 903 KB
    [BOOTLOADER_PROFILE] Cores present    :
    hsm-m4f0-0
    mcu-r5f0-0
    a530-0
    [BOOTLOADER PROFILE] System_init                      :       7101us
    [BOOTLOADER PROFILE] Board_init                       :          6us
    [BOOTLOADER PROFILE] FreeRtosTask Create              :        269us
    [BOOTLOADER PROFILE] SBL Drivers_open                 :       1369us
    [BOOTLOADER PROFILE] SBL Board_driversOpen            :       7853us
    [BOOTLOADER PROFILE] HSM Image Load                   :       3849us
    [BOOTLOADER PROFILE] MCU R5 Image Load                :       4251us
    [BOOTLOADER PROFILE] A53 Image Load                   :      12148us
    [BOOTLOADER_PROFILE] SBL Total Time Taken             :      36849us
    
    Image loading done, switching to application ...
    Starting linux and RTOS/Baremetal applications
    NOTICE:  BL31: v2.12.0(release):11.00.08-1-gb11beb2b6-dirty
    NOTICE:  BL31: Built : 12:35:58, Mar 24 2025
    

    and this's the flash config here:

    #-----------------------------------------------------------------------------#
    #                                                                             #
    #      DEFAULT CONFIGURATION FILE TO BE USED WITH THE FLASHWRITER SCRIPT      #
    #                                                                             #
    #-----------------------------------------------------------------------------#
    #
    # By default this config file,
    # - points to pre-built flash writer, bootloader for this EVM
    # - The application image points to relative path of the ipc rpmsg linux application image for this EVM
    #   - Make sure this application is built before running this script
    # - You can customized this config file to point to your own bootloader and/or application images
    # - You can use --operation=flashverify if you just want to verify the flash contents and not flash the file.
    #
    
    # First point to sbl_uart_uniflash_stage1 binary, which initialises DDR and receives sbl_uart_uniflash_stage2 binary
    
    --flash-writer=sbl_prebuilt/am62px-sk/sbl_uart_uniflash_stage1.release.hs_fs.tiimage
    
    # Points to sbl_uart_uniflash_stage2 binary, which function's as a server to flash one or more files to eMMC
    # Please note this binary is copied to DDR by sbl_uart_uniflash_stage1 and not written to any boot media like flash or eMMC
    --file=../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62px-sk/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage.hs_fs --operation=flash --flash-offset=0x0
    
    #--operation=flash-phy-tuning-data
    # Now send one or more files to flash or flashverify as needed. The order of sending files does not matter
    
    
    
    # When sending bootloader make sure to flash at offset 0x0. ROM expects bootloader at offset 0x0 of eMMC
    #--file=../../examples/drivers/boot/sbl_emmc_linux_multistage/sbl_emmc_linux_stage1/am62px-sk/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_emmc_linux_stage1.release.hs_fs.tiimage --operation=flash-emmc --flash-offset=0x0
    
    
    # 2nd stage bootloader with DM is flashed at 0x80000 or to whatever offset your bootloader is configured for
    --file="C:/Users/uidk9830/workspace_ccstheia/dss_display_share_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang/Debug/dss_display_share_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang.appimage.hs_fs" --operation=flash-emmc --flash-offset=0x80000
    
    # HSM image is flashed at 0x240000 or to whatever offset your bootloader is configured for
    --file=HSMAppimageGen/board/am62px-sk/hsm.appimage.hs_fs --operation=flash-emmc --flash-offset=0x240000
    
    # When sending application image, make sure to flash at offset 0x800000 (default) or to whatever offset your bootloader is configured for
    --file=../../examples/drivers/ipc/ipc_rpmsg_echo_qnx/am62px-sk/mcu-r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo_qnx.release.appimage.hs_fs --operation=flash-emmc --flash-offset=0x800000
    
    # QNX image is flashed at 0x1200000 or to whatever offset your bootloader is configured for
    --file=../../tools/boot/qnxAppimageGen/board/am62px-sk/qnx.appimage.hs_fs --operation=flash-emmc --flash-offset=0x280000

  • Hi,

    Are you trying to run using dual boot media (OSPI and eMMC)? Or just eMMC.

    Best Regards,

    Suren

  • Hello Team

    No, now I tried to changed the demo dss_display_share  setting in SYSconfig, to set all startup to emmc:

     

    and flash config file:

     

    #-----------------------------------------------------------------------------#
    #                                                                             #
    #      DEFAULT CONFIGURATION FILE TO BE USED WITH THE FLASHWRITER SCRIPT      #
    #                                                                             #
    #-----------------------------------------------------------------------------#
    #
    # By default this config file,
    # - points to pre-built flash writer, bootloader for this EVM
    # - The application image points to relative path of the ipc rpmsg linux application image for this EVM
    #   - Make sure this application is built before running this script
    # - You can customized this config file to point to your own bootloader and/or application images
    # - You can use --operation=flashverify if you just want to verify the flash contents and not flash the file.
    #
    
    # First point to sbl_uart_uniflash_stage1 binary, which initialises DDR and receives sbl_uart_uniflash_stage2 binary
    
    --flash-writer=sbl_prebuilt/am62px-sk/sbl_uart_uniflash_stage1.release.hs_fs.tiimage
    
    # Points to sbl_uart_uniflash_stage2 binary, which function's as a server to flash one or more files to eMMC
    # Please note this binary is copied to DDR by sbl_uart_uniflash_stage1 and not written to any boot media like flash or eMMC
    --file=../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62px-sk/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage.hs_fs --operation=flash --flash-offset=0x0
    
    #--operation=flash-phy-tuning-data
    # Now send one or more files to flash or flashverify as needed. The order of sending files does not matter
    
    
    
    # When sending bootloader make sure to flash at offset 0x0. ROM expects bootloader at offset 0x0 of eMMC
    --file=../../examples/drivers/boot/sbl_emmc_linux_multistage/sbl_emmc_linux_stage1/am62px-sk/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_emmc_linux_stage1.release.hs_fs.tiimage --operation=flash-emmc --flash-offset=0x0
    
    
    # 2nd stage bootloader with DM is flashed at 0x80000 or to whatever offset your bootloader is configured for
    --file="C:/Users/uidk9830/workspace_ccstheia/dss_display_share_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang/Debug/dss_display_share_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang.appimage.hs_fs" --operation=flash-emmc --flash-offset=0x80000
    ####Demo for screen test
    #--file="C:\Users\uidk9830\workspace_ccstheia\dss_display_test_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang\Debug\dss_display_test_am62px-sk_wkup-r5fss0-0_freertos_ti-arm-clang.appimage.hs_fs" --operation=flash-emmc --flash-offset=0x80000
    
    
    
    
    # HSM image is flashed at 0x240000 or to whatever offset your bootloader is configured for
    --file=HSMAppimageGen/board/am62px-sk/hsm.appimage.hs_fs --operation=flash-emmc --flash-offset=0x740000
    
    # When sending application image, make sure to flash at offset 0x800000 (default) or to whatever offset your bootloader is configured for
    --file=../../examples/drivers/ipc/ipc_rpmsg_echo_qnx/am62px-sk/mcu-r5fss0-0_freertos/ti-arm-clang/ipc_rpmsg_echo_qnx.release.appimage.hs_fs --operation=flash-emmc --flash-offset=0x800000
    
    # QNX image is flashed at 0x1200000 or to whatever offset your bootloader is configured for
    --file=../../tools/boot/qnxAppimageGen/board/am62px-sk/qnx.appimage.hs_fs --operation=flash-emmc --flash-offset=0x1200000

    But when I tried to startup, I got this message:

     

    [BOOTLOADER_PROFILE] Boot Media       : eMMC 
    [BOOTLOADER_PROFILE] Boot Media Clock : 200.000 MHz 
    [BOOTLOADER_PROFILE] Boot Image Size  : 6568 KB 
    [BOOTLOADER_PROFILE] Cores present    : 
    wkup-r5f0-0
    [BOOTLOADER PROFILE] System_init                      :      38831us 
    [BOOTLOADER PROFILE] Board_init                       :          0us 
    [BOOTLOADER PROFILE] Drivers_open                     :          0us 
    [BOOTLOADER PROFILE] SBL Drivers_open                 :      20415us 
    [BOOTLOADER PROFILE] Board_driversOpen                :          0us 
    [BOOTLOADER PROFILE] App_loadSelfcoreImage            :      85816us 
    [BOOTLOADER_PROFILE] SBL Total Time Taken             :     145064us 
    
    Image loading done, switching to application ...
    Starting 2nd stage bootloader

    then the startup pending.....

  • Hi,

    Are you running Linux or QNX?

    Best Regards,

    Suren

  • Hi TI team

    QNX, 

    I already solve this issue, I change the code in startup to init EMMC then the boot will be ok..

  • Glad you have it working.

    i am going to close this thread. Feel free to contact us for any further assistance.

    Beat Regards,

    Suren