* [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL
@ 2017-02-08 17:21 Andrew F. Davis
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
` (5 more replies)
0 siblings, 6 replies; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
Hello all,
To address a needed feature brought up by Andreas[0], we need a way to
disable SPL from loading non-FIT images.
The function spl_parse_image_header is common to all SPL loading paths
(common/spl/spl_(nand|net|nor|etc..)) so we add the check here.
This version of the series is a bit different than the last 2 due
to suggestions by Simon, instead of a negative option disabling
non-FIT images, we allow the other image format's support to be
toggled off, and do that on HS boards.
Thanks,
Andrew
[0] https://www.mail-archive.com/u-boot at lists.denx.de/msg219253.html
Andrew F. Davis (6):
spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
spl: Add option to enable SPL Legacy image support
ARM: AM335x: Disable non-FIT based image loading for HS devices
ARM: AM43xx: Disable non-FIT based image loading for HS devices
ARM: AM57xx: Disable non-FIT based image loading for HS devices
ARM: DRA7xx: Disable non-FIT based image loading for HS devices
Kconfig | 15 +++++++++++++++
README | 4 ----
common/spl/spl.c | 18 ++++++++++++------
configs/am335x_hs_evm_defconfig | 2 ++
configs/am43xx_hs_evm_defconfig | 2 ++
configs/am57xx_hs_evm_defconfig | 2 ++
configs/dra7xx_hs_evm_defconfig | 2 ++
include/configs/imx6_spl.h | 4 ++--
include/configs/socfpga_de1_soc.h | 2 +-
include/spl.h | 2 +-
10 files changed, 39 insertions(+), 14 deletions(-)
--
2.11.0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
@ 2017-02-08 17:21 ` Andrew F. Davis
2017-02-09 4:21 ` Lokesh Vutla
2017-02-10 18:38 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support Andrew F. Davis
` (4 subsequent siblings)
5 siblings, 2 replies; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
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
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
Kconfig | 7 +++++++
README | 4 ----
common/spl/spl.c | 9 +++++----
include/configs/imx6_spl.h | 4 ++--
include/configs/socfpga_de1_soc.h | 2 +-
include/spl.h | 2 +-
6 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/Kconfig b/Kconfig
index 8f9ea97f3d..8ce2d8c3bb 100644
--- a/Kconfig
+++ b/Kconfig
@@ -291,6 +291,13 @@ config SYS_TEXT_BASE
help
TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
+config SPL_RAW_IMAGE_SUPPORT
+ bool "Support SPL loading and booting of RAW images"
+ 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 SYS_CLK_FREQ
depends on ARC || ARCH_SUNXI
diff --git a/README b/README
index ecb1710d01..127c77c4e2 100644
--- a/README
+++ b/README
@@ -3298,10 +3298,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
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 766fb3d6f4..d564d4d2a2 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -146,16 +146,17 @@ 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. */
+ return -EINVAL;
#endif
}
+
return 0;
}
diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
index c5a035fccf..acaf81b6b9 100644
--- a/include/configs/imx6_spl.h
+++ b/include/configs/imx6_spl.h
@@ -45,14 +45,14 @@
#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
+#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
#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
+#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
#endif
/* Define the payload for FAT/EXT support */
diff --git a/include/configs/socfpga_de1_soc.h b/include/configs/socfpga_de1_soc.h
index 5e7a712cf5..52d292b752 100644
--- a/include/configs/socfpga_de1_soc.h
+++ b/include/configs/socfpga_de1_soc.h
@@ -51,6 +51,6 @@
/* The rest of the configuration is shared */
#include <configs/socfpga_common.h>
-#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
+#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
#endif /* __CONFIG_TERASIC_DE1_SOC_H__ */
diff --git a/include/spl.h b/include/spl.h
index bde44374ea..270798c988 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -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.
*
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
@ 2017-02-08 17:21 ` Andrew F. Davis
2017-02-09 4:22 ` Lokesh Vutla
2017-02-10 18:38 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices Andrew F. Davis
` (3 subsequent siblings)
5 siblings, 2 replies; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
Add a Kconfig option that enables Legacy image support, this allows
boards to explicitly disable this, for instance when needed for
security reasons.
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
Kconfig | 8 ++++++++
common/spl/spl.c | 9 +++++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/Kconfig b/Kconfig
index 8ce2d8c3bb..62fa667b7f 100644
--- a/Kconfig
+++ b/Kconfig
@@ -299,6 +299,14 @@ config SPL_RAW_IMAGE_SUPPORT
is y. If this is not set, SPL will move on to other available
boot media to find a suitable image.
+config SPL_LEGACY_IMAGE_SUPPORT
+ bool "Support SPL loading and booting of Legacy images"
+ default y
+ help
+ SPL will support loading and booting Legacy images 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 SYS_CLK_FREQ
depends on ARC || ARCH_SUNXI
int "CPU clock frequency"
diff --git a/common/spl/spl.c b/common/spl/spl.c
index d564d4d2a2..ccea4aa55f 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -93,9 +93,10 @@ void spl_set_header_raw_uboot(struct spl_image_info *spl_image)
int spl_parse_image_header(struct spl_image_info *spl_image,
const struct image_header *header)
{
- u32 header_size = sizeof(struct image_header);
-
if (image_get_magic(header) == IH_MAGIC) {
+#ifdef CONFIG_SPL_LEGACY_IMAGE_SUPPORT
+ u32 header_size = sizeof(struct image_header);
+
if (spl_image->flags & SPL_COPY_PAYLOAD_ONLY) {
/*
* On some system (e.g. powerpc), the load-address and
@@ -118,6 +119,10 @@ int spl_parse_image_header(struct spl_image_info *spl_image,
debug("spl: payload image: %.*s load addr: 0x%lx size: %d\n",
(int)sizeof(spl_image->name), spl_image->name,
spl_image->load_addr, spl_image->size);
+#else
+ /* LEGACY image not supported */
+ return -EINVAL;
+#endif
} else {
#ifdef CONFIG_SPL_PANIC_ON_RAW_IMAGE
/*
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
2017-02-08 17:21 ` [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support Andrew F. Davis
@ 2017-02-08 17:21 ` Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 4/6] ARM: AM43xx: " Andrew F. Davis
` (2 subsequent siblings)
5 siblings, 1 reply; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
Disable support for loading non-FIT images for AM335x platforms using
the high-security (HS) device variant.
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
configs/am335x_hs_evm_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/am335x_hs_evm_defconfig b/configs/am335x_hs_evm_defconfig
index d6224bcdfb..374540906c 100644
--- a/configs/am335x_hs_evm_defconfig
+++ b/configs/am335x_hs_evm_defconfig
@@ -14,6 +14,8 @@ CONFIG_SYS_EXTRA_OPTIONS="NAND"
CONFIG_SPL_LOAD_FIT=y
CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
CONFIG_FIT_IMAGE_POST_PROCESS=y
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_LEGACY_IMAGE_SUPPORT is not set
CONFIG_SYS_CONSOLE_INFO_QUIET=y
CONFIG_VERSION_VARIABLE=y
CONFIG_SPL=y
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 4/6] ARM: AM43xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
` (2 preceding siblings ...)
2017-02-08 17:21 ` [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices Andrew F. Davis
@ 2017-02-08 17:21 ` Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 5/6] ARM: AM57xx: " Andrew F. Davis
2017-02-08 17:22 ` [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: " Andrew F. Davis
5 siblings, 1 reply; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
Disable support for loading non-FIT images for AM43xx platforms using
the high-security (HS) device variant.
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
configs/am43xx_hs_evm_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig
index 8bb1b3535a..fabf876621 100644
--- a/configs/am43xx_hs_evm_defconfig
+++ b/configs/am43xx_hs_evm_defconfig
@@ -10,6 +10,8 @@ CONFIG_FIT=y
CONFIG_FIT_IMAGE_POST_PROCESS=y
CONFIG_SPL_LOAD_FIT=y
CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_LEGACY_IMAGE_SUPPORT is not set
CONFIG_SYS_EXTRA_OPTIONS="CONS_INDEX=1, NAND"
CONFIG_SYS_CONSOLE_INFO_QUIET=y
CONFIG_VERSION_VARIABLE=y
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 5/6] ARM: AM57xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
` (3 preceding siblings ...)
2017-02-08 17:21 ` [U-Boot] [PATCH v3 4/6] ARM: AM43xx: " Andrew F. Davis
@ 2017-02-08 17:21 ` Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:22 ` [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: " Andrew F. Davis
5 siblings, 1 reply; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:21 UTC (permalink / raw)
To: u-boot
Disable support for loading non-FIT images for AM57xx platforms using
the high-security (HS) device variant.
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
configs/am57xx_hs_evm_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
index 7e84ccddf3..4adbde427b 100644
--- a/configs/am57xx_hs_evm_defconfig
+++ b/configs/am57xx_hs_evm_defconfig
@@ -14,6 +14,8 @@ CONFIG_FIT=y
CONFIG_FIT_IMAGE_POST_PROCESS=y
CONFIG_SPL_LOAD_FIT=y
CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_LEGACY_IMAGE_SUPPORT is not set
CONFIG_OF_BOARD_SETUP=y
CONFIG_SYS_CONSOLE_INFO_QUIET=y
CONFIG_VERSION_VARIABLE=y
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
` (4 preceding siblings ...)
2017-02-08 17:21 ` [U-Boot] [PATCH v3 5/6] ARM: AM57xx: " Andrew F. Davis
@ 2017-02-08 17:22 ` Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
5 siblings, 1 reply; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-08 17:22 UTC (permalink / raw)
To: u-boot
Disable support for loading non-FIT images for DRA7xx platforms using
the high-security (HS) device variant.
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
configs/dra7xx_hs_evm_defconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
index 244940cd6c..c5e7b16c8b 100644
--- a/configs/dra7xx_hs_evm_defconfig
+++ b/configs/dra7xx_hs_evm_defconfig
@@ -15,6 +15,8 @@ CONFIG_FIT=y
CONFIG_FIT_IMAGE_POST_PROCESS=y
CONFIG_SPL_LOAD_FIT=y
CONFIG_SPL_FIT_IMAGE_POST_PROCESS=y
+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
+# CONFIG_SPL_LEGACY_IMAGE_SUPPORT is not set
CONFIG_OF_BOARD_SETUP=y
CONFIG_SYS_CONSOLE_INFO_QUIET=y
CONFIG_VERSION_VARIABLE=y
--
2.11.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
@ 2017-02-09 4:21 ` Lokesh Vutla
2017-02-10 18:38 ` Simon Glass
1 sibling, 0 replies; 18+ messages in thread
From: Lokesh Vutla @ 2017-02-09 4:21 UTC (permalink / raw)
To: u-boot
On Wednesday 08 February 2017 10:51 PM, Andrew F. Davis wrote:
> 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
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> Kconfig | 7 +++++++
> README | 4 ----
> common/spl/spl.c | 9 +++++----
> include/configs/imx6_spl.h | 4 ++--
> include/configs/socfpga_de1_soc.h | 2 +-
> include/spl.h | 2 +-
> 6 files changed, 16 insertions(+), 12 deletions(-)
>
> diff --git a/Kconfig b/Kconfig
> index 8f9ea97f3d..8ce2d8c3bb 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -291,6 +291,13 @@ config SYS_TEXT_BASE
> help
> TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>
> +config SPL_RAW_IMAGE_SUPPORT
> + bool "Support SPL loading and booting of RAW images"
> + 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.
You might want to keep this under common/spl/Kconfig?
Thanks and regards,
Lokesh
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support
2017-02-08 17:21 ` [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support Andrew F. Davis
@ 2017-02-09 4:22 ` Lokesh Vutla
2017-02-09 14:52 ` Andrew F. Davis
2017-02-10 18:38 ` Simon Glass
1 sibling, 1 reply; 18+ messages in thread
From: Lokesh Vutla @ 2017-02-09 4:22 UTC (permalink / raw)
To: u-boot
On Wednesday 08 February 2017 10:51 PM, Andrew F. Davis wrote:
> Add a Kconfig option that enables Legacy image support, this allows
> boards to explicitly disable this, for instance when needed for
> security reasons.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> Kconfig | 8 ++++++++
> common/spl/spl.c | 9 +++++++--
> 2 files changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/Kconfig b/Kconfig
> index 8ce2d8c3bb..62fa667b7f 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -299,6 +299,14 @@ config SPL_RAW_IMAGE_SUPPORT
> is y. If this is not set, SPL will move on to other available
> boot media to find a suitable image.
>
> +config SPL_LEGACY_IMAGE_SUPPORT
> + bool "Support SPL loading and booting of Legacy images"
> + default y
> + help
> + SPL will support loading and booting Legacy images when this option
> + is y. If this is not set, SPL will move on to other available
> + boot media to find a suitable image.
> +
This as well can be moved under spl. Or is there any specific reason you
keep it here?
Thanks and regards,
Lokesh
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support
2017-02-09 4:22 ` Lokesh Vutla
@ 2017-02-09 14:52 ` Andrew F. Davis
0 siblings, 0 replies; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-09 14:52 UTC (permalink / raw)
To: u-boot
On 02/08/2017 10:22 PM, Lokesh Vutla wrote:
>
>
> On Wednesday 08 February 2017 10:51 PM, Andrew F. Davis wrote:
>> Add a Kconfig option that enables Legacy image support, this allows
>> boards to explicitly disable this, for instance when needed for
>> security reasons.
>>
>> Signed-off-by: Andrew F. Davis <afd@ti.com>
>> ---
>> Kconfig | 8 ++++++++
>> common/spl/spl.c | 9 +++++++--
>> 2 files changed, 15 insertions(+), 2 deletions(-)
>>
>> diff --git a/Kconfig b/Kconfig
>> index 8ce2d8c3bb..62fa667b7f 100644
>> --- a/Kconfig
>> +++ b/Kconfig
>> @@ -299,6 +299,14 @@ config SPL_RAW_IMAGE_SUPPORT
>> is y. If this is not set, SPL will move on to other available
>> boot media to find a suitable image.
>>
>> +config SPL_LEGACY_IMAGE_SUPPORT
>> + bool "Support SPL loading and booting of Legacy images"
>> + default y
>> + help
>> + SPL will support loading and booting Legacy images when this option
>> + is y. If this is not set, SPL will move on to other available
>> + boot media to find a suitable image.
>> +
>
> This as well can be moved under spl. Or is there any specific reason you
> keep it here?
>
I think this is the best spot. It is under "Boot images", like FIT
support options above this, the SPL image loading support defines what
type of images U-Boot should be built into. At some point we should have
the U-Boot build types depend on the SPL support for that type.
Thanks,
Andrew
> Thanks and regards,
> Lokesh
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
2017-02-09 4:21 ` Lokesh Vutla
@ 2017-02-10 18:38 ` Simon Glass
2017-02-10 19:58 ` Andrew F. Davis
1 sibling, 1 reply; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:38 UTC (permalink / raw)
To: u-boot
Hi Andrew,
On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
>
> 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
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> Kconfig | 7 +++++++
> README | 4 ----
> common/spl/spl.c | 9 +++++----
> include/configs/imx6_spl.h | 4 ++--
> include/configs/socfpga_de1_soc.h | 2 +-
> include/spl.h | 2 +-
> 6 files changed, 16 insertions(+), 12 deletions(-)
>
> diff --git a/Kconfig b/Kconfig
> index 8f9ea97f3d..8ce2d8c3bb 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -291,6 +291,13 @@ config SYS_TEXT_BASE
> help
> TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>
> +config SPL_RAW_IMAGE_SUPPORT
> + bool "Support SPL loading and booting of RAW images"
> + 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 SYS_CLK_FREQ
> depends on ARC || ARCH_SUNXI
> diff --git a/README b/README
> index ecb1710d01..127c77c4e2 100644
> --- a/README
> +++ b/README
> @@ -3298,10 +3298,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
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index 766fb3d6f4..d564d4d2a2 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -146,16 +146,17 @@ 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. */
How about a debug() here?
> + return -EINVAL;
> #endif
> }
> +
> return 0;
> }
>
> diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
> index c5a035fccf..acaf81b6b9 100644
> --- a/include/configs/imx6_spl.h
> +++ b/include/configs/imx6_spl.h
> @@ -45,14 +45,14 @@
> #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
> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
I think this needs to be done in the defconfigs, or a a default in
imx6 Kconfig. You might be able to change your 'default y' above to
'default y if !xxx' where xxx is the secure boot option.
> #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
> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
> #endif
>
> /* Define the payload for FAT/EXT support */
> diff --git a/include/configs/socfpga_de1_soc.h b/include/configs/socfpga_de1_soc.h
> index 5e7a712cf5..52d292b752 100644
> --- a/include/configs/socfpga_de1_soc.h
> +++ b/include/configs/socfpga_de1_soc.h
> @@ -51,6 +51,6 @@
> /* The rest of the configuration is shared */
> #include <configs/socfpga_common.h>
>
> -#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
>
> #endif /* __CONFIG_TERASIC_DE1_SOC_H__ */
> diff --git a/include/spl.h b/include/spl.h
> index bde44374ea..270798c988 100644
> --- a/include/spl.h
> +++ b/include/spl.h
> @@ -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.
> *
> --
> 2.11.0
>
Regards,
Simon
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support
2017-02-08 17:21 ` [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support Andrew F. Davis
2017-02-09 4:22 ` Lokesh Vutla
@ 2017-02-10 18:38 ` Simon Glass
1 sibling, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:38 UTC (permalink / raw)
To: u-boot
On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
> Add a Kconfig option that enables Legacy image support, this allows
> boards to explicitly disable this, for instance when needed for
> security reasons.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> Kconfig | 8 ++++++++
> common/spl/spl.c | 9 +++++++--
> 2 files changed, 15 insertions(+), 2 deletions(-)
>
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 ` [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices Andrew F. Davis
@ 2017-02-10 18:39 ` Simon Glass
0 siblings, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:39 UTC (permalink / raw)
To: u-boot
On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
> Disable support for loading non-FIT images for AM335x platforms using
> the high-security (HS) device variant.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> configs/am335x_hs_evm_defconfig | 2 ++
> 1 file changed, 2 insertions(+)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 4/6] ARM: AM43xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 ` [U-Boot] [PATCH v3 4/6] ARM: AM43xx: " Andrew F. Davis
@ 2017-02-10 18:39 ` Simon Glass
0 siblings, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:39 UTC (permalink / raw)
To: u-boot
On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
> Disable support for loading non-FIT images for AM43xx platforms using
> the high-security (HS) device variant.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> configs/am43xx_hs_evm_defconfig | 2 ++
> 1 file changed, 2 insertions(+)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 5/6] ARM: AM57xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:21 ` [U-Boot] [PATCH v3 5/6] ARM: AM57xx: " Andrew F. Davis
@ 2017-02-10 18:39 ` Simon Glass
0 siblings, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:39 UTC (permalink / raw)
To: u-boot
On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
> Disable support for loading non-FIT images for AM57xx platforms using
> the high-security (HS) device variant.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> configs/am57xx_hs_evm_defconfig | 2 ++
> 1 file changed, 2 insertions(+)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: Disable non-FIT based image loading for HS devices
2017-02-08 17:22 ` [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: " Andrew F. Davis
@ 2017-02-10 18:39 ` Simon Glass
0 siblings, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-10 18:39 UTC (permalink / raw)
To: u-boot
On 8 February 2017 at 10:22, Andrew F. Davis <afd@ti.com> wrote:
> Disable support for loading non-FIT images for DRA7xx platforms using
> the high-security (HS) device variant.
>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> ---
> configs/dra7xx_hs_evm_defconfig | 2 ++
> 1 file changed, 2 insertions(+)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
2017-02-10 18:38 ` Simon Glass
@ 2017-02-10 19:58 ` Andrew F. Davis
2017-02-14 5:23 ` Simon Glass
0 siblings, 1 reply; 18+ messages in thread
From: Andrew F. Davis @ 2017-02-10 19:58 UTC (permalink / raw)
To: u-boot
On 02/10/2017 12:38 PM, Simon Glass wrote:
> Hi Andrew,
>
> On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
>>
>> 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
>>
>> Signed-off-by: Andrew F. Davis <afd@ti.com>
>> ---
>> Kconfig | 7 +++++++
>> README | 4 ----
>> common/spl/spl.c | 9 +++++----
>> include/configs/imx6_spl.h | 4 ++--
>> include/configs/socfpga_de1_soc.h | 2 +-
>> include/spl.h | 2 +-
>> 6 files changed, 16 insertions(+), 12 deletions(-)
>>
>> diff --git a/Kconfig b/Kconfig
>> index 8f9ea97f3d..8ce2d8c3bb 100644
>> --- a/Kconfig
>> +++ b/Kconfig
>> @@ -291,6 +291,13 @@ config SYS_TEXT_BASE
>> help
>> TODO: Move CONFIG_SYS_TEXT_BASE for all the architecture
>>
>> +config SPL_RAW_IMAGE_SUPPORT
>> + bool "Support SPL loading and booting of RAW images"
>> + 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 SYS_CLK_FREQ
>> depends on ARC || ARCH_SUNXI
>> diff --git a/README b/README
>> index ecb1710d01..127c77c4e2 100644
>> --- a/README
>> +++ b/README
>> @@ -3298,10 +3298,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
>> diff --git a/common/spl/spl.c b/common/spl/spl.c
>> index 766fb3d6f4..d564d4d2a2 100644
>> --- a/common/spl/spl.c
>> +++ b/common/spl/spl.c
>> @@ -146,16 +146,17 @@ 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. */
>
> How about a debug() here?
>
Sure, I'll add one to the next patch too that has the same logic as here.
>> + return -EINVAL;
>> #endif
>> }
>> +
>> return 0;
>> }
>>
>> diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
>> index c5a035fccf..acaf81b6b9 100644
>> --- a/include/configs/imx6_spl.h
>> +++ b/include/configs/imx6_spl.h
>> @@ -45,14 +45,14 @@
>> #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
>> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
>
> I think this needs to be done in the defconfigs, or a a default in
> imx6 Kconfig. You might be able to change your 'default y' above to
> 'default y if !xxx' where xxx is the secure boot option.
>
I was going to finish this conversion by just running moveconfig.py
CONFIG_SPL_RAW_IMAGE_SUPPORT, but this generated a lot of unrelated
defconfig re-ordering in the patch. I would need to do something like
this[0] again before converting.
I think what we could do is let Tom or someone with high level push
access do these defconfig re-orders all at once after a bunch of new
symbols have been defined. Otherwise we end up with giant patches that
are hard to merge and manage.
If not, I can attach the patch moveconfig.py generated.
Andrew
[0] https://patchwork.ozlabs.org/patch/704253/
>> #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
>> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
>> #endif
>>
>> /* Define the payload for FAT/EXT support */
>> diff --git a/include/configs/socfpga_de1_soc.h b/include/configs/socfpga_de1_soc.h
>> index 5e7a712cf5..52d292b752 100644
>> --- a/include/configs/socfpga_de1_soc.h
>> +++ b/include/configs/socfpga_de1_soc.h
>> @@ -51,6 +51,6 @@
>> /* The rest of the configuration is shared */
>> #include <configs/socfpga_common.h>
>>
>> -#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
>> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
>>
>> #endif /* __CONFIG_TERASIC_DE1_SOC_H__ */
>> diff --git a/include/spl.h b/include/spl.h
>> index bde44374ea..270798c988 100644
>> --- a/include/spl.h
>> +++ b/include/spl.h
>> @@ -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.
>> *
>> --
>> 2.11.0
>>
>
> Regards,
> Simon
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option
2017-02-10 19:58 ` Andrew F. Davis
@ 2017-02-14 5:23 ` Simon Glass
0 siblings, 0 replies; 18+ messages in thread
From: Simon Glass @ 2017-02-14 5:23 UTC (permalink / raw)
To: u-boot
Hi Andrew,
On 10 February 2017 at 12:58, Andrew F. Davis <afd@ti.com> wrote:
> On 02/10/2017 12:38 PM, Simon Glass wrote:
>> Hi Andrew,
>>
>> On 8 February 2017 at 10:21, Andrew F. Davis <afd@ti.com> wrote:
>>>
>>> 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
>>>
>>> Signed-off-by: Andrew F. Davis <afd@ti.com>
>>> ---
>>> Kconfig | 7 +++++++
>>> README | 4 ----
>>> common/spl/spl.c | 9 +++++----
>>> include/configs/imx6_spl.h | 4 ++--
>>> include/configs/socfpga_de1_soc.h | 2 +-
>>> include/spl.h | 2 +-
>>> 6 files changed, 16 insertions(+), 12 deletions(-)
>>>
[..]
>>> diff --git a/include/configs/imx6_spl.h b/include/configs/imx6_spl.h
>>> index c5a035fccf..acaf81b6b9 100644
>>> --- a/include/configs/imx6_spl.h
>>> +++ b/include/configs/imx6_spl.h
>>> @@ -45,14 +45,14 @@
>>> #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
>>> +#undef CONFIG_SPL_RAW_IMAGE_SUPPORT
>>
>> I think this needs to be done in the defconfigs, or a a default in
>> imx6 Kconfig. You might be able to change your 'default y' above to
>> 'default y if !xxx' where xxx is the secure boot option.
>>
>
> I was going to finish this conversion by just running moveconfig.py
> CONFIG_SPL_RAW_IMAGE_SUPPORT, but this generated a lot of unrelated
> defconfig re-ordering in the patch. I would need to do something like
> this[0] again before converting.
>
> I think what we could do is let Tom or someone with high level push
> access do these defconfig re-orders all at once after a bunch of new
> symbols have been defined. Otherwise we end up with giant patches that
> are hard to merge and manage.
>
> If not, I can attach the patch moveconfig.py generated.
>
OK with me - will leave this to you and Tom.
Regards,
Simon
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2017-02-14 5:23 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-08 17:21 [U-Boot] [PATCH v3 0/6] Allow disabling non-FIT image loading from SPL Andrew F. Davis
2017-02-08 17:21 ` [U-Boot] [PATCH v3 1/6] spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option Andrew F. Davis
2017-02-09 4:21 ` Lokesh Vutla
2017-02-10 18:38 ` Simon Glass
2017-02-10 19:58 ` Andrew F. Davis
2017-02-14 5:23 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 2/6] spl: Add option to enable SPL Legacy image support Andrew F. Davis
2017-02-09 4:22 ` Lokesh Vutla
2017-02-09 14:52 ` Andrew F. Davis
2017-02-10 18:38 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 3/6] ARM: AM335x: Disable non-FIT based image loading for HS devices Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 4/6] ARM: AM43xx: " Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:21 ` [U-Boot] [PATCH v3 5/6] ARM: AM57xx: " Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
2017-02-08 17:22 ` [U-Boot] [PATCH v3 6/6] ARM: DRA7xx: " Andrew F. Davis
2017-02-10 18:39 ` Simon Glass
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.