[PATCH] arm: rpi: explicitly enumerate mmc boot targets

Ben Wolsieffer benwolsieffer at gmail.com
Sat Oct 7 17:55:35 CEST 2023


Using the unqualified "mmc" boot target causes the Raspberry Pi 4 to
fail to boot. c771e5b explains this approach as follows:

> 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.

In practice, U-Boot first attempts to boot from the unconnected mmc1
interface, and, when this fails, moves on to attempt the USB and network
boot targets rather than trying mmc0.

This patch explicitly enumerates the mmc interfaces, causing each to be
attempted in turn. This matches what is done on other boards, and allows
the system to boot successfully.

Fixes: c771e5b8c2 ("arm: rpi: Switch to standard boot")
Signed-off-by: Ben Wolsieffer <benwolsieffer at gmail.com>
---
 board/raspberrypi/rpi/rpi.env | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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
-- 
2.42.0



More information about the U-Boot mailing list