Question about boot failure of AM64-SK

Hi.
I am seeing a boot failure on AM64-SK.
I got the following error in SPL of the main core. Do you have any clue?
Error reading cluster fit read sector 0, sectors=985528, dst=, count=18446744073709551615, size=0xf09b8
The resulting count looks crazy, but I imagine it was just that the negative error code was converted to ulong.
For debugging, I enabled debug() under common/spl/. The rest is the same as the latest mainline.
The full log is as follows:
U-Boot SPL 2023.10-rc4-00047-gb9b83a86f0-dirty (Sep 21 2023 - 14:38:15 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.7--v09.00.07 (Kool Koala)') EEPROM not available at 0x50, trying to read at 0x51 SPL initial stack usage: 13384 bytes SPL malloc() before relocation used 0x32ec bytes (12 KB)
SPL: board_init_r()
spl_init Trying to boot from MMC2 spl: mmc boot mode: fs Found FIT fit read sector 0, sectors=874340, dst=, count=874339, size=0xd5764 firmware: 'atf' Embedded data: dst=701c0000, size=b2a8 Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Image OS is ARM Trusted Firmware loadables: 'tee' Embedded data: dst=9e800000, size=753e0 Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Loadable is Trusted Execution Environment loadables: 'dm' Embedded data: dst=89000000, size=0 Loadable is Unknown OS loadables: 'spl' Embedded data: dst=80080000, size=4ff18 Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Loadable is U-Boot fdt: 'fdt-1' Embedded data: dst=800cf888, size=2af2 Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted loadables: 'spl' no string for index 3 Unsupported OS image.. Jumping nevertheless.. Loading Environment from MMC... MMC Device 0 not found *** Warning - No MMC card found, using default environment
Starting ATF on ARM64 core...
NOTICE: BL31: v2.9(release):v2.9.0 NOTICE: BL31: Built : 10:06:58, Sep 21 2023 I/TC: I/TC: OP-TEE version: 3.22.0 (gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)) #1 Thu Sep 21 10:06:54 UTC 2023 aarch64 I/TC: WARNING: This OP-TEE configuration might be insecure! I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html I/TC: Primary CPU initializing I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.7--v09.00.07 (Kool Koala)') I/TC: HUK Initialized I/TC: Activated SA2UL device I/TC: Fixing SA2UL firewall owner for GP device I/TC: Enabled firewalls for SA2UL TRNG device I/TC: SA2UL TRNG initialized I/TC: SA2UL Drivers initialized I/TC: Primary CPU switching to normal world boot
U-Boot SPL 2023.10-rc4-00047-gb9b83a86f0-dirty (Sep 21 2023 - 14:38:20 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.7--v09.00.07 (Kool Koala)') SPL malloc() before relocation used 0x1f80 bytes (7 KB)
SPL: board_init_r()
spl_init Trying to boot from MMC2 spl: mmc boot mode: fs Found FIT Error reading cluster fit read sector 0, sectors=985528, dst=, count=18446744073709551615, size=0xf09b8 SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ###
My build sequence is something like this:
# for wakeup make -j "$(nproc)" O=build-wakeup CROSS_COMPILE=arm-linux-gnueabihf- \ BINMAN_INDIRS="${SNAPCRAFT_STAGE}/ti-linux-firmware" \ am64x_evm_r5_defconfig all cp build-wakeup/tiboot3-am64x-gp-evm.bin "${STAGE}/tiboot3.bin"
# for main make -j "$(nproc)" O=build-main am64x_evm_a53_defconfig make -j "$(nproc)" O=build-main CROSS_COMPILE=aarch64-linux-gnu- \ BINMAN_INDIRS="${STAGE}/ti-linux-firmware" \ BL31="${STAGE}/bl31.bin" \ TEE="${STAGE}/tee-raw.bin" \ all cp build-main/tispl.bin build-main/u-boot.img "${STAGE}"
Strangely, AM62-SK booted successfully, but AM64-SK failed. I do not know why.

On Fri, Sep 22, 2023 at 12:03 AM Masahiro Yamada masahiroy@kernel.org wrote:
Hi.
I am seeing a boot failure on AM64-SK.
I got the following error in SPL of the main core. Do you have any clue?
As a side-topic, I downloaded a prebuilt image from https://www.ti.com/tool/SK-AM64
It failed too (but in a different way).
I flashed tisdk-debian-bookworm-am64xx-evm.wic to a SD card by using the 'dd' command, then I got this:
U-Boot SPL 2023.04 (Jul 14 2023 - 08:10:06 +0000) EEPROM not available at 0x50, trying to read at 0x51 k3_system_controller sysctrler: k3_sysctrler_start: Boot Notification response failed. ret = -110 Firmware init failed on rproc (-110)
resetting ... ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 no sysreset ### ERROR ### Please RESET the board ###
Am I doing something wrong?

Hi,
On 21/09/23 21:52, Masahiro Yamada wrote:
On Fri, Sep 22, 2023 at 12:03 AM Masahiro Yamada masahiroy@kernel.org wrote:
Hi.
I am seeing a boot failure on AM64-SK.
I got the following error in SPL of the main core. Do you have any clue?
As a side-topic, I downloaded a prebuilt image from https://www.ti.com/tool/SK-AM64
It failed too (but in a different way).
I flashed tisdk-debian-bookworm-am64xx-evm.wic to a SD card by using the 'dd' command, then I got this:
Prebuilt images are targeted for High Secure (HS FS) devices. Looks like the board has a non HS Silicon (GP). Please overwrite the tiboot3.bin in boot partition with that of GP
cp tiboot3-am64x-gp-evm.bin tiboot3.bin
U-Boot SPL 2023.04 (Jul 14 2023 - 08:10:06 +0000) EEPROM not available at 0x50, trying to read at 0x51 k3_system_controller sysctrler: k3_sysctrler_start: Boot Notification response failed. ret = -110 Firmware init failed on rproc (-110)
resetting ... ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 ti_sci system-controller@44043000: ti_sci_get_response: Message receive failed. ret = -110 no sysreset ### ERROR ### Please RESET the board ###
Am I doing something wrong?

On Mon, Sep 25, 2023 at 1:28 PM Vignesh Raghavendra vigneshr@ti.com wrote:
Hi,
On 21/09/23 21:52, Masahiro Yamada wrote:
On Fri, Sep 22, 2023 at 12:03 AM Masahiro Yamada masahiroy@kernel.org wrote:
Hi.
I am seeing a boot failure on AM64-SK.
I got the following error in SPL of the main core. Do you have any clue?
As a side-topic, I downloaded a prebuilt image from https://www.ti.com/tool/SK-AM64
It failed too (but in a different way).
I flashed tisdk-debian-bookworm-am64xx-evm.wic to a SD card by using the 'dd' command, then I got this:
Prebuilt images are targeted for High Secure (HS FS) devices. Looks like the board has a non HS Silicon (GP). Please overwrite the tiboot3.bin in boot partition with that of GP
cp tiboot3-am64x-gp-evm.bin tiboot3.bin
Yeah, it made progress.
But, it failed in the same way as the latest U-Boot.
U-Boot SPL 2023.04 (Jul 14 2023 - 08:10:06 +0000) EEPROM not available at 0x50, trying to read at 0x51 Resetting on cold boot to workaround ErrataID:i2331 Please resend tiboot3.bin in case of UART/DFU boot resetting ...
U-Boot SPL 2023.04 (Jul 14 2023 - 08:10:06 +0000) EEPROM not available at 0x50, trying to read at 0x51 SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)') SPL initial stack usage: 13376 bytes Trying to boot from MMC2 Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Warning: Detected image signing certificate on GP device. Skipping certificate to prevent boot failure. This will fail if the image was also encrypted Loading Environment from MMC... MMC Device 0 not found *** Warning - No MMC card found, using default environment
Starting ATF on ARM64 core...
NOTICE: BL31: v2.8(release):v2.8-226-g2fcd408bb NOTICE: BL31: Built : 08:09:13, Jul 14 2023 I/TC: I/TC: OP-TEE version: 3.20.0 (gcc version 11.3.1 20220712 (Arm GNU Toolchain 11.3.Rel1)) #1 Fri Jul 14 08:09:59 UTC 2023 aarch64 I/TC: WARNING: This OP-TEE configuration might be insecure! I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html I/TC: Primary CPU initializing I/TC: SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)') I/TC: HUK Initialized I/TC: Activated SA2UL device I/TC: Fixing SA2UL firewall owner for GP device I/TC: Enabled firewalls for SA2UL TRNG device I/TC: SA2UL TRNG initialized I/TC: SA2UL Drivers initialized I/TC: Primary CPU switching to normal world boot
U-Boot SPL 2023.04 (Jul 14 2023 - 08:11:18 +0000) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.5--v09.00.05 (Kool Koala)') Trying to boot from MMC2 Error reading cluster SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ###

Hi Masahiro,
On 21/09/23 20:33, Masahiro Yamada wrote:
Hi.
[...]
spl: mmc boot mode: fs Found FIT Error reading cluster fit read sector 0, sectors=985528, dst=, count=18446744073709551615, size=0xf09b8 SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ###
Looks like SD card incompatibility to me. Could you try couple of things:
a) Different brand SD card b) Degrade speeds to non UHS mode:
diff --git a/arch/arm/dts/k3-am642-sk.dts b/arch/arm/dts/k3-am642-sk.dts index 2e2d40da360a..35da121de872 100644 --- a/arch/arm/dts/k3-am642-sk.dts +++ b/arch/arm/dts/k3-am642-sk.dts @@ -408,6 +408,7 @@ pinctrl-0 = <&main_mmc1_pins_default>; ti,driver-strength-ohm = <50>; disable-wp; + no-1-8-v; };
My build sequence is something like this:
# for wakeup make -j "$(nproc)" O=build-wakeup CROSS_COMPILE=arm-linux-gnueabihf- \ BINMAN_INDIRS="${SNAPCRAFT_STAGE}/ti-linux-firmware" \ am64x_evm_r5_defconfig all cp build-wakeup/tiboot3-am64x-gp-evm.bin "${STAGE}/tiboot3.bin" # for main make -j "$(nproc)" O=build-main am64x_evm_a53_defconfig make -j "$(nproc)" O=build-main CROSS_COMPILE=aarch64-linux-gnu- \ BINMAN_INDIRS="${STAGE}/ti-linux-firmware" \ BL31="${STAGE}/bl31.bin" \ TEE="${STAGE}/tee-raw.bin" \ all cp build-main/tispl.bin build-main/u-boot.img "${STAGE}"
Seems alright to me.
Strangely, AM62-SK booted successfully, but AM64-SK failed. I do not know why.

On Mon, Sep 25, 2023 at 1:24 PM Vignesh Raghavendra vigneshr@ti.com wrote:
Hi Masahiro,
On 21/09/23 20:33, Masahiro Yamada wrote:
Hi.
[...]
spl: mmc boot mode: fs Found FIT Error reading cluster fit read sector 0, sectors=985528, dst=, count=18446744073709551615, size=0xf09b8 SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ###
Looks like SD card incompatibility to me. Could you try couple of things:
a) Different brand SD card
Hi Vignesh.
I tried Transcend and Lexar, but both failed in the same way.
b) Degrade speeds to non UHS mode:
I added no-1-8-v, but no luck either.
BTW, due to project shifting within my company, this board is no longer a priority for me.
I will put AM64-SK on my shelf. :)
participants (2)
-
Masahiro Yamada
-
Vignesh Raghavendra