ONFIG_SPL_OS_BOOTHi,
On 22-10-15 14:01, Nikita Kiryanov wrote:
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
Cc: Igor Grinberg
Cc: Paul Kocialkowski
Cc: Pantelis Antoniou
Cc: Tom Rini
Cc: Simon Glass
Cc: Guillaume GARDET
Cc: Suriyan Ramasami
This mostly serves to grow the SPL unnecessarily for
boards which do not use CONFIG_SPL_OS_BOOT, boards which
want to have it available as a fallback option can
simple enable both CONFIG_SPL_OS_BOOT and the CONFIG_SPL_FOO
for their main boot method.
Regards,
Hans
---
common/spl/spl_ext.c | 6 ++
common/spl/spl_fat.c | 6 ++
common/spl/spl_mmc.c | 17 +
3 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/common/spl/spl_ext.c b/common/spl/spl_ext.c
index 9d37fd3..a42fbd0 100644
--- a/common/spl/spl_ext.c
+++ b/common/spl/spl_ext.c
@@ -6,6 +6,7 @@
#include
#include
#include
+#include
#include
#ifdef CONFIG_SPL_EXT_SUPPORT
@@ -135,5 +136,10 @@ defaults:
return spl_load_image_ext(block_dev, partition,
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
diff --git a/common/spl/spl_fat.c b/common/spl/spl_fat.c
index 350f7d9..0daadbe 100644
--- a/common/spl/spl_fat.c
+++ b/common/spl/spl_fat.c
@@ -13,6 +13,7 @@
#include
#include
#include
+#include
#include
static int fat_registered;
@@ -119,5 +120,10 @@ defaults:
return spl_load_image_fat(block_dev, partition,
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
diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
index cfbda1a..f0c4d56 100644
--- a/common/spl/spl_mmc.c
+++ b/common/spl/spl_mmc.c
@@ -154,6 +154,15 @@ static int mmc_load_image_raw_os(struct mmc *mmc)
return mmc_load_image_raw_sector(mmc,
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
void spl_mmc_load_image(void)
@@ -179,13 +188,11 @@ void spl_mmc_load_image(void)
case MMCSD_MODE_RAW:
debug("spl: mmc boot mode: raw\n");
-#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) {
err = mmc_load_image_raw_os(mmc);
if (!err)
return;
}
-#endif
#if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION)
err = mmc_load_image_raw_partition(mmc,
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_SPL_FAT_SUPPORT
-#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) {
err = spl_load_image_fat_os(>block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
if (!err)
return;
}
-#endif
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
err = spl_load_image_fat(>block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
@@ -220,14 +225,12 @@ void spl_mmc_load_image(void)
#endif
#endif
#ifdef CONFIG_SPL_EXT_SUPPORT
-#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) {
err = spl_load_image_ext_os(>block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION);
if (!err)
return;
}
-#endif
#ifdef CONFIG_SPL_FS_LOAD_PAYLOAD_NAME
err = spl_load_image_ext(>block_dev,
CONFIG_SYS_MMCSD_FS_BOOT_PARTITION,
@@ -257,13 +260,11 @@ void spl_mmc_load_image(void)
hang();
}
-#ifdef CONFIG_SPL_OS_BOOT
if (!spl_start_uboot()) {
err = mmc_load_image_raw_os(mmc);
if (!err)
return;
}
-#endif
#if defined(CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION)
err = mmc_load_image_raw_partition(mmc,
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION);
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot