U-Boot 2023.10 does not boot from uSD on RPi4

Guillaume Gardet Guillaume.Gardet at arm.com
Tue Oct 10 11:26:34 CEST 2023


Hi,

U-Boot 2023.10 does not boot from uSD on RPi4.
This has been found on openSUSE Tumbleweed. The only diff we need is:
  -CONFIG_OF_EMBED=y
  +CONFIG_OF_BOARD=y
To use firmware provided Device Tree. But that should not affect the mmc behavior too much, I think.

'git bisect' points to:
**********
commit c771e5b8c2a186fb072b6c6f571d4a3cc86efba9
Author: Simon Glass <sjg at chromium.org>
Date:   Thu Jul 27 15:54:28 2023 -0600

    arm: rpi: Switch to standard boot

    Drop use of the distro scripts and use standard boot instead.

    We don't need to specify the mmc devices individually, since they are
    used in order from 0 to 2, and standard boot uses that order anyway.

    Signed-off-by: Simon Glass <sjg at chromium.org>
**********

The following patch fixes the boot from uSD on RPi4 (not tested on RPi3 nor RPi Zero 2 W):
**********
diff --git a/board/raspberrypi/rpi/rpi.env b/board/raspberrypi/rpi/rpi.env
index 30228285ed..02210b97b5 100644
--- a/board/raspberrypi/rpi/rpi.env
+++ b/board/raspberrypi/rpi/rpi.env
@@ -74,4 +74,4 @@ pxefile_addr_r=0x02500000
 fdt_addr_r=0x02600000
 ramdisk_addr_r=0x02700000

-boot_targets=mmc usb pxe dhcp
+boot_targets=mmc0 mmc1 mmc2 usb pxe dhcp
**********

So, the comment from Simon " We don't need to specify the mmc devices individually, since they are used in order from 0 to 2, and standard boot uses that order anyway" seems wrong for the RPi4 case.

Cheers,
Guillaume

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


More information about the U-Boot mailing list