From 772b55723bcbe8ebe84f579d9cdc831d8e18579d Mon Sep 17 00:00:00 2001 From: Lukasz Majewski Date: Mon, 9 Sep 2019 15:32:13 +0200 Subject: imx: Introduce CONFIG_SPL_FORCE_MMC_BOOT to force MMC boot on falcon mode This change tries to fix the following problem: - The board boots (to be more precise - ROM loads SPL) from a slow SPI-NOR memory. As a result the spl_boot_device() will return SPI-NOR as a boot device (which is correct). - The problem is that in 'falcon boot' the eMMC is used as a boot medium to load kernel from its partition. Calling spl_boot_device() will break things as it returns SPI-NOR device. To fix this issue the new CONFIG_SPL_FORCE_MMC_BOOT Kconfig flag is introduced to handle this special use case. By default it is not defined, so there is no change in the legacy code flow. Signed-off-by: Lukasz Majewski --- common/spl/Kconfig | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'common/spl/Kconfig') diff --git a/common/spl/Kconfig b/common/spl/Kconfig index 2ca219995d..f59b6f5b51 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -608,6 +608,15 @@ config SPL_MMC_SUPPORT this option to build the drivers in drivers/mmc as part of an SPL build. +config SPL_FORCE_MMC_BOOT + bool "Force SPL booting from MMC" + depends on SPL_MMC_SUPPORT + default n + help + Force SPL to use MMC device for Linux kernel booting even when the + SoC ROM recognized boot medium is not eMMC/SD. This is crucial for + factory or 'falcon mode' booting. + config SPL_MMC_TINY bool "Tiny MMC framework in SPL" depends on SPL_MMC_SUPPORT -- cgit