spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option

CONFIG_SPL_ABORT_ON_RAW_IMAGE causes SPL to abort and move on when it
encounters RAW images, express this same functionality as a positive
option enabling support for RAW images: CONFIG_SPL_RAW_IMAGE_SUPPORT

Also move uses of this to defconfigs.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[trini: Rework Kconfig logic a little, move to common/spl/Kconfig]
Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Andrew F. Davis 2017-02-16 11:18:38 -06:00 committed by Tom Rini
parent f9515756b6
commit 24eb39b575
7 changed files with 18 additions and 13 deletions

4
README
View File

@ -3255,10 +3255,6 @@ FIT uImage format:
consider that a completely unreadable NAND block is bad,
and thus should be skipped silently.
CONFIG_SPL_ABORT_ON_RAW_IMAGE
When defined, SPL will proceed to another boot method
if the image it has loaded does not have a signature.
CONFIG_SPL_RELOC_STACK
Adress of the start of the stack SPL will use after
relocation. If unspecified, this is equal to

View File

@ -13,6 +13,16 @@ config SPL
help
If you want to build SPL as well as the normal image, say Y.
config SPL_RAW_IMAGE_SUPPORT
bool "Support SPL loading and booting of RAW images"
depends on SPL
default n if (ARCH_MX6 && (SPL_MMC_SUPPORT || SPL_SATA_SUPPORT))
default y
help
SPL will support loading and booting a RAW image when this option
is y. If this is not set, SPL will move on to other available
boot media to find a suitable image.
config SPL_SYS_MALLOC_SIMPLE
bool
depends on SPL

View File

@ -146,16 +146,18 @@ int spl_parse_image_header(struct spl_image_info *spl_image,
}
#endif
#ifdef CONFIG_SPL_ABORT_ON_RAW_IMAGE
/* Signature not found, proceed to other boot methods. */
return -EINVAL;
#else
#ifdef CONFIG_SPL_RAW_IMAGE_SUPPORT
/* Signature not found - assume u-boot.bin */
debug("mkimage signature not found - ih_magic = %x\n",
header->ih_magic);
spl_set_header_raw_uboot(spl_image);
#else
/* RAW image not supported, proceed to other boot methods. */
debug("Raw boot image support not enabled, proceeding to other boot methods");
return -EINVAL;
#endif
}
return 0;
}

View File

@ -12,6 +12,7 @@ CONFIG_SYS_CONSOLE_ENV_OVERWRITE=y
CONFIG_VERSION_VARIABLE=y
# CONFIG_DISPLAY_BOARDINFO is not set
CONFIG_SPL=y
# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
CONFIG_SPL_SYS_MALLOC_SIMPLE=y
CONFIG_SPL_STACK_R=y
CONFIG_SPL_YMODEM_SUPPORT=y

View File

@ -45,14 +45,12 @@
#if defined(CONFIG_SPL_MMC_SUPPORT)
#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
#define CONFIG_SYS_MONITOR_LEN 409600 /* 400 KB */
#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
#endif
/* SATA support */
#if defined(CONFIG_SPL_SATA_SUPPORT)
#define CONFIG_SPL_SATA_BOOT_DEVICE 0
#define CONFIG_SYS_SATA_FAT_BOOT_PARTITION 1
#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
#endif
/* Define the payload for FAT/EXT support */

View File

@ -50,6 +50,4 @@
/* The rest of the configuration is shared */
#include <configs/socfpga_common.h>
#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
#endif /* __CONFIG_TERASIC_DE1_SOC_H__ */

View File

@ -85,7 +85,7 @@ void spl_set_header_raw_uboot(struct spl_image_info *spl_image);
* This parses the legacy image header information at @header and sets up
* @spl_image according to what is found. If no image header is found, then
* a raw image or bootz is assumed. If CONFIG_SPL_PANIC_ON_RAW_IMAGE is
* enabled, then this causes a panic. If CONFIG_SPL_ABORT_ON_RAW_IMAGE is
* enabled, then this causes a panic. If CONFIG_SPL_RAW_IMAGE_SUPPORT is not
* enabled then U-Boot gives up. Otherwise U-Boot sets up the image using
* spl_set_header_raw_uboot(), or possibly the bootz header.
*