diff options
author | Lukasz Majewski <lukma@denx.de> | 2018-02-03 08:29:52 +0100 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2018-02-07 22:06:18 -0500 |
commit | d695d6627803dbb78a226e04b0436a01633a9936 (patch) | |
tree | cc469594d3654709f309c935c0292a12be0e32fa /common/spl/spl_mmc.c | |
parent | 492322992be31f535dd825b3f0475f05df21256b (diff) | |
download | u-boot-d695d6627803dbb78a226e04b0436a01633a9936.tar.gz u-boot-d695d6627803dbb78a226e04b0436a01633a9936.tar.bz2 u-boot-d695d6627803dbb78a226e04b0436a01633a9936.zip |
spl: eMMC/SD: Provide one __weak spl_boot_mode() function
The goal of this patch is to clean up the code related to choosing SPL
MMC boot mode.
The spl_boot_mode() now is called only in spl_mmc_load_image() function,
which is only compiled in if CONFIG_SPL_MMC_SUPPORT is enabled.
To achieve the goal, all per mach/arch implementations eligible for
unification has been replaced with one __weak implementation.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Stefano Babic <sbabic@denx.de>
Acked-by: Michal Simek <michal.simek@xilinx.com> (For ZynqMP)
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Diffstat (limited to 'common/spl/spl_mmc.c')
-rw-r--r-- | common/spl/spl_mmc.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c index b57e0b04e4..351f4edd41 100644 --- a/common/spl/spl_mmc.c +++ b/common/spl/spl_mmc.c @@ -281,6 +281,17 @@ static int spl_mmc_do_fs_boot(struct spl_image_info *spl_image, struct mmc *mmc) } #endif +u32 __weak spl_boot_mode(const u32 boot_device) +{ +#if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT) + return MMCSD_MODE_FS; +#elif defined(CONFIG_SUPPORT_EMMC_BOOT) + return MMCSD_MODE_EMMCBOOT; +#else + return MMCSD_MODE_RAW; +#endif +} + int spl_mmc_load_image(struct spl_image_info *spl_image, struct spl_boot_device *bootdev) { |