spl: mmc: move fs boot into its own function
Move the code that handles fs boot out of spl_mmc_load_image() and into its own function to reduce the #ifdef complexity of spl_mmc_load_image(). No functional changes. Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Paul Kocialkowski <contact@paulk.fr> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Tom Rini <trini@konsulko.com> Cc: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
parent
d074ebb936
commit
f52b729393
@ -171,6 +171,55 @@ static int mmc_load_image_raw_os(struct mmc *mmc)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SYS_MMCSD_FS_BOOT_PARTITION
|
||||
int spl_mmc_do_fs_boot(struct mmc *mmc)
|
||||
{
|
||||
int err = -ENOSYS;
|
||||
|
||||
#ifdef CONFIG_SPL_FAT_SUPPORT
|
||||
if (!spl_start_uboot()) {
|
||||
err = spl_load_image_fat_os(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
|
||||
if (!err)
|
||||
return err;
|
||||
}
|
||||
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
|
||||
err = spl_load_image_fat(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
|
||||
CONFIG_SPL_FS_LOAD_PAYLOAD_NAME);
|
||||
if (!err)
|
||||
return err;
|
||||
#endif
|
||||
#endif
|
||||
#ifdef CONFIG_SPL_EXT_SUPPORT
|
||||
if (!spl_start_uboot()) {
|
||||
err = spl_load_image_ext_os(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
|
||||
if (!err)
|
||||
return err;
|
||||
}
|
||||
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
|
||||
err = spl_load_image_ext(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
|
||||
CONFIG_SPL_FS_LOAD_PAYLOAD_NAME);
|
||||
if (!err)
|
||||
return err;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT)
|
||||
err = -ENOENT;
|
||||
#endif
|
||||
|
||||
return err;
|
||||
}
|
||||
#else
|
||||
int spl_mmc_do_fs_boot(struct mmc *mmc)
|
||||
{
|
||||
return -ENOSYS;
|
||||
}
|
||||
#endif
|
||||
|
||||
void spl_mmc_load_image(void)
|
||||
{
|
||||
struct mmc *mmc;
|
||||
@ -214,38 +263,10 @@ void spl_mmc_load_image(void)
|
||||
case MMCSD_MODE_FS:
|
||||
debug("spl: mmc boot mode: fs\n");
|
||||
|
||||
#ifdef CONFIG_SYS_MMCSD_FS_BOOT_PARTITION
|
||||
#ifdef CONFIG_SPL_FAT_SUPPORT
|
||||
if (!spl_start_uboot()) {
|
||||
err = spl_load_image_fat_os(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
|
||||
if (!err)
|
||||
return;
|
||||
}
|
||||
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
|
||||
err = spl_load_image_fat(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
|
||||
CONFIG_SPL_FS_LOAD_PAYLOAD_NAME);
|
||||
err = spl_mmc_do_fs_boot(mmc);
|
||||
if (!err)
|
||||
return;
|
||||
#endif
|
||||
#endif
|
||||
#ifdef CONFIG_SPL_EXT_SUPPORT
|
||||
if (!spl_start_uboot()) {
|
||||
err = spl_load_image_ext_os(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
|
||||
if (!err)
|
||||
return;
|
||||
}
|
||||
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
|
||||
err = spl_load_image_ext(&mmc->block_dev,
|
||||
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
|
||||
CONFIG_SPL_FS_LOAD_PAYLOAD_NAME);
|
||||
if (!err)
|
||||
return;
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
break;
|
||||
#ifdef CONFIG_SUPPORT_EMMC_BOOT
|
||||
case MMCSD_MODE_EMMCBOOT:
|
||||
|
Loading…
Reference in New Issue
Block a user