spl: mmc: remove #ifdef CONFIG_SPL_OS_BOOT check

Implement default versions of falcon mode functions to make the
CONFIG_SPL_OS_BOOT check in spl_mmc_load_image() unnecessary, thus reducing
its #ifdef complexity.

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>
Cc: Guillaume GARDET <guillaume.gardet@free.fr>
Cc: Suriyan Ramasami <suriyan.r@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Nikita Kiryanov 2015-11-08 17:11:45 +02:00 committed by Tom Rini
parent 4188ba3202
commit 339245b70d
3 changed files with 21 additions and 8 deletions

View file

@ -6,6 +6,7 @@
#include <spl.h> #include <spl.h>
#include <asm/u-boot.h> #include <asm/u-boot.h>
#include <ext4fs.h> #include <ext4fs.h>
#include <errno.h>
#include <image.h> #include <image.h>
#ifdef CONFIG_SPL_EXT_SUPPORT #ifdef CONFIG_SPL_EXT_SUPPORT
@ -135,5 +136,10 @@ defaults:
return spl_load_image_ext(block_dev, partition, return spl_load_image_ext(block_dev, partition,
CONFIG_SPL_FS_LOAD_KERNEL_NAME); CONFIG_SPL_FS_LOAD_KERNEL_NAME);
} }
#else
int spl_load_image_ext_os(block_dev_desc_t *block_dev, int partition)
{
return -ENOSYS;
}
#endif #endif
#endif #endif

View file

@ -13,6 +13,7 @@
#include <spl.h> #include <spl.h>
#include <asm/u-boot.h> #include <asm/u-boot.h>
#include <fat.h> #include <fat.h>
#include <errno.h>
#include <image.h> #include <image.h>
static int fat_registered; static int fat_registered;
@ -119,5 +120,10 @@ defaults:
return spl_load_image_fat(block_dev, partition, return spl_load_image_fat(block_dev, partition,
CONFIG_SPL_FS_LOAD_KERNEL_NAME); CONFIG_SPL_FS_LOAD_KERNEL_NAME);
} }
#else
int spl_load_image_fat_os(block_dev_desc_t *block_dev, int partition)
{
return -ENOSYS;
}
#endif #endif
#endif #endif

View file

@ -154,6 +154,15 @@ static int mmc_load_image_raw_os(struct mmc *mmc)
return mmc_load_image_raw_sector(mmc, return mmc_load_image_raw_sector(mmc,
CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR); CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR);
} }
#else
int spl_start_uboot(void)
{
return 1;
}
static int mmc_load_image_raw_os(struct mmc *mmc)
{
return -ENOSYS;
}
#endif #endif
void spl_mmc_load_image(void) void spl_mmc_load_image(void)
@ -179,13 +188,11 @@ void spl_mmc_load_image(void)
case MMCSD_MODE_RAW: case MMCSD_MODE_RAW:
debug("spl: mmc boot mode: raw\n"); debug("spl: mmc boot mode: raw\n");
#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) { if (!spl_start_uboot()) {
err = mmc_load_image_raw_os(mmc); err = mmc_load_image_raw_os(mmc);
if (!err) if (!err)
return; return;
} }
#endif
#if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION) #if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION)
err = mmc_load_image_raw_partition(mmc, err = mmc_load_image_raw_partition(mmc,
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION); CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION);
@ -203,14 +210,12 @@ void spl_mmc_load_image(void)
#ifdef CONFIG_SYS_MMCSD_FS_BOOT_PARTITION #ifdef CONFIG_SYS_MMCSD_FS_BOOT_PARTITION
#ifdef CONFIG_SPL_FAT_SUPPORT #ifdef CONFIG_SPL_FAT_SUPPORT
#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) { if (!spl_start_uboot()) {
err = spl_load_image_fat_os(&mmc->block_dev, err = spl_load_image_fat_os(&mmc->block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION); CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
if (!err) if (!err)
return; return;
} }
#endif
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME #ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
err = spl_load_image_fat(&mmc->block_dev, err = spl_load_image_fat(&mmc->block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION, CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
@ -220,14 +225,12 @@ void spl_mmc_load_image(void)
#endif #endif
#endif #endif
#ifdef CONFIG_SPL_EXT_SUPPORT #ifdef CONFIG_SPL_EXT_SUPPORT
#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) { if (!spl_start_uboot()) {
err = spl_load_image_ext_os(&mmc->block_dev, err = spl_load_image_ext_os(&mmc->block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION); CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
if (!err) if (!err)
return; return;
} }
#endif
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME #ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
err = spl_load_image_ext(&mmc->block_dev, err = spl_load_image_ext(&mmc->block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION, CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
@ -257,13 +260,11 @@ void spl_mmc_load_image(void)
hang(); hang();
} }
#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) { if (!spl_start_uboot()) {
err = mmc_load_image_raw_os(mmc); err = mmc_load_image_raw_os(mmc);
if (!err) if (!err)
return; return;
} }
#endif
#if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION) #if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION)
err = mmc_load_image_raw_partition(mmc, err = mmc_load_image_raw_partition(mmc,
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION); CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION);