]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
arm: mvebu: spl: Load proper U-Boot from selected eMMC boot partition
authorPali Rohár <pali@kernel.org>
Sun, 8 Jan 2023 12:31:41 +0000 (13:31 +0100)
committerStefan Roese <sr@denx.de>
Wed, 1 Mar 2023 05:39:17 +0000 (06:39 +0100)
When eMMC boot is selected then BootROM loads kwbimage header (U-Boot SPL)
from the selected eMMC boot partition. So for eMMC boot ensure that U-Boot
SPL loads U-Boot proper (from kwbimage) also from the same selected eMMC
boot partition.

Fixes: 2226ca173486 ("arm: mvebu: Load U-Boot proper binary in SPL code based on kwbimage header")
Signed-off-by: Pali Rohár <pali@kernel.org>
arch/arm/mach-mvebu/Kconfig
arch/arm/mach-mvebu/spl.c

index 16c5e7229550b56e507fbef6f64f2dbdfd0d421c..14558bb0ef9c00b7e12c2e34d9fe74324e3763a8 100644 (file)
@@ -348,6 +348,7 @@ config MVEBU_SPL_BOOT_DEVICE_MMC
        imply SPL_GPIO
        imply SPL_LIBDISK_SUPPORT
        imply SPL_MMC
+       select SUPPORT_EMMC_BOOT if SPL_MMC
        select SPL_BOOTROM_SUPPORT
 
 config MVEBU_SPL_BOOT_DEVICE_SATA
index e14c7a9c6cf2a48becba2dcb99458d5d6324781b..0a809e91349cb957e92eeb4cbfbdbb8a7bce874b 100644 (file)
  * kwbimage main header.
  */
 #ifdef CONFIG_SPL_MMC
+#ifdef CONFIG_SUPPORT_EMMC_BOOT_OVERRIDE_PART_CONFIG
+#error CONFIG_SUPPORT_EMMC_BOOT_OVERRIDE_PART_CONFIG is unsupported
+#endif
+#ifdef CONFIG_SYS_MMCSD_RAW_MODE_EMMC_BOOT_PARTITION
+#error CONFIG_SYS_MMCSD_RAW_MODE_EMMC_BOOT_PARTITION is unsupported
+#endif
 #ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
 #error CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION is unsupported
 #endif
@@ -98,7 +104,7 @@ struct kwbimage_main_hdr_v1 {
 #ifdef CONFIG_SPL_MMC
 u32 spl_mmc_boot_mode(struct mmc *mmc, const u32 boot_device)
 {
-       return MMCSD_MODE_RAW;
+       return MMCSD_MODE_EMMCBOOT;
 }
 #endif