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.

[FAQ] A53 boot binary (tispl.bin) loading error when BOOTMODE[7]="0" in eMMC boot mode on AM62x

AM62x boot-rom support on booting R5-SPL/SBL from eMMC is described in Chapter 5 Initialization of AM62x TRM

It is summarized in the table below. Note that booting from eMMC boot partition with BOOTMODE[6:3] = 1001, BOOTMODE[7] is n/a.

 eMMC

BOOTMODE[7]

BOOTMODE[6:3]

Boot partition

n/a (raw only)

1001

UDA

0 => fs
1 => raw

1000

eMMC booting in AM62x (https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/08_06_00_42/exports/docs/linux/Foundational_Components/U-Boot/UG-Memory.html#booting-tiboot3-bin-tispl-bin-and-u-boot-img-from-emmc-boot-partition-for-k3-class-of-socs

When BOOTMODE [15:0] = 004B,  => BOOTMODE[7] =0 BOOTMODE[6:3]=1001, u-boot booting from eMMC fails (a sample log is listed below).

U-Boot SPL 2021.01-g3983bffabc (Dec 02 2022 - 23:06:59 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0008 '8.5.3--v08.05.03 (Chill Capybar')
SPL initial stack usage: 13424 bytes
Trying to boot from MMC1
Partition 1 not valid on device 0 **
spl_register_fat_device: fat register err - -1
spl_load_image_fat: error reading image tispl.bin, err - -1
SPL: failed to boot from all boot devices
ERROR ### Please RESET the board ###

  • AM62x boot-rom boots tiboot3.bin (R5-SPL) from eMMC boot partition correctly,  but u-boot code loads the next stage tispl.bin (A53 binary) based on reading of “BOOTMODE[7] + BOOTMODE[6:3]”. When BOOTMODE[7] = 0, tiboot3.bin try to load tispl.bin incorrectly from “fs” instead of “raw” as shown the log.

    The attached u-boot patch is a workaround for the issue before the final u-boot fix is ready and released.

    am62x_bootmode7_emmc.patch