[PATCH 1/3] board: mediatek: fix mmc_get_boot_dev() for platforms without external SD

David Woodhouse dwmw2 at infradead.org
Mon Jul 13 00:33:01 CEST 2020


On the UniElec U7623 board there is no external SD slot and the preloader
doesn't fill in the magic field at 0x81dffff0 to indicate that it was
booted from eMMC.

Signed-off-by: David Woodhouse <dwmw2 at infradead.org>
---
 board/mediatek/mt7623/mt7623_rfb.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/board/mediatek/mt7623/mt7623_rfb.c b/board/mediatek/mt7623/mt7623_rfb.c
index 4ec2764976..984e75ccaf 100644
--- a/board/mediatek/mt7623/mt7623_rfb.c
+++ b/board/mediatek/mt7623/mt7623_rfb.c
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <mmc.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -15,10 +16,15 @@ int board_init(void)
 	return 0;
 }
 
+#ifdef CONFIG_MMC
 int mmc_get_boot_dev(void)
 {
 	int g_mmc_devid = -1;
 	char *uflag = (char *)0x81DFFFF0;
+
+	if (!find_mmc_device(1))
+		return 0;
+
 	if (strncmp(uflag,"eMMC",4)==0) {
 		g_mmc_devid = 0;
 		printf("Boot From Emmc(id:%d)\n\n", g_mmc_devid);
@@ -33,3 +39,4 @@ int mmc_get_env_dev(void)
 {
 	return mmc_get_boot_dev();
 }
+#endif
-- 
2.26.2



More information about the U-Boot mailing list