[U-Boot] [PATCH v1 0/2] Use SPL_FIT_IMAGE_TINY to reduce the size the SPL for the am335x_evm

Patch #1 handles a corner case: SPL_FIT_IMAGE and SPL_OS_BOOT at the same time Patch #2 enables SPL_FIT_IMAGE_TINY for the am335x_evm platform
Jean-Jacques Hiblot (2): spl: fit: Always enable tracking of os-type if SPL_OS_BOOT is enabled configs: am335x_evm: enable SPL_FIT_IMAGE_TINY
common/spl/spl_fit.c | 2 +- configs/am335x_evm_defconfig | 1 + 2 files changed, 2 insertions(+), 1 deletion(-)

FIT_IMAGE_TINY is used to reduce the size of the SPL by removing os-type tracking and recording the loadables into the loaded FDT. When this option is enabled, it is assumed that the next stage firmware is u-boot. However this does not play well with the SPL_OS_BOOT option that enables loading different type of next stage firmware, like the OS itself.
When SPL_OS_BOOT is used, do not disable os-tracking. The added footprint is about 300 Bytes.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com ---
common/spl/spl_fit.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c index c9bfe0cc8a..87ecf0bb9e 100644 --- a/common/spl/spl_fit.c +++ b/common/spl/spl_fit.c @@ -333,7 +333,7 @@ static int spl_fit_record_loadable(const void *fit, int images, int index,
static int spl_fit_image_get_os(const void *fit, int noffset, uint8_t *os) { -#if CONFIG_IS_ENABLED(FIT_IMAGE_TINY) +#if CONFIG_IS_ENABLED(FIT_IMAGE_TINY) && !defined(CONFIG_SPL_OS_BOOT) return -ENOTSUPP; #else return fit_image_get_os(fit, noffset, os);

On 26/04/19 6:51 PM, Jean-Jacques Hiblot wrote:
FIT_IMAGE_TINY is used to reduce the size of the SPL by removing os-type tracking and recording the loadables into the loaded FDT. When this option is enabled, it is assumed that the next stage firmware is u-boot. However this does not play well with the SPL_OS_BOOT option that enables loading different type of next stage firmware, like the OS itself.
When SPL_OS_BOOT is used, do not disable os-tracking. The added footprint is about 300 Bytes.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com
Reviewed-by: Lokesh Vutla lokeshvutla@ti.com
Thanks and regards, Lokesh

On Fri, Apr 26, 2019 at 03:21:25PM +0200, Jean-Jacques Hiblot wrote:
FIT_IMAGE_TINY is used to reduce the size of the SPL by removing os-type tracking and recording the loadables into the loaded FDT. When this option is enabled, it is assumed that the next stage firmware is u-boot. However this does not play well with the SPL_OS_BOOT option that enables loading different type of next stage firmware, like the OS itself.
When SPL_OS_BOOT is used, do not disable os-tracking. The added footprint is about 300 Bytes.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com Reviewed-by: Lokesh Vutla lokeshvutla@ti.com
Applied to u-boot/master, thanks!

The size of the SPL for the am335x_evm is constrained. There is no need to have advanced SPL FIT features, so keep the SPL FIT support tiny.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com
---
configs/am335x_evm_defconfig | 1 + 1 file changed, 1 insertion(+)
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig index 105ff01d14..81fee7bcb0 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig @@ -11,6 +11,7 @@ CONFIG_LOGLEVEL=3 CONFIG_SYS_CONSOLE_INFO_QUIET=y CONFIG_VERSION_VARIABLE=y CONFIG_ARCH_MISC_INIT=y +CONFIG_SPL_FIT_IMAGE_TINY=y CONFIG_SPL_ETH_SUPPORT=y # CONFIG_SPL_FS_EXT4 is not set CONFIG_SPL_MTD_SUPPORT=y

On 26/04/19 6:51 PM, Jean-Jacques Hiblot wrote:
The size of the SPL for the am335x_evm is constrained. There is no need to have advanced SPL FIT features, so keep the SPL FIT support tiny.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com
Reviewed-by: Lokesh Vutla lokeshvutla@ti.com
Thanks and regards, Lokesh
configs/am335x_evm_defconfig | 1 + 1 file changed, 1 insertion(+)
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig index 105ff01d14..81fee7bcb0 100644 --- a/configs/am335x_evm_defconfig +++ b/configs/am335x_evm_defconfig @@ -11,6 +11,7 @@ CONFIG_LOGLEVEL=3 CONFIG_SYS_CONSOLE_INFO_QUIET=y CONFIG_VERSION_VARIABLE=y CONFIG_ARCH_MISC_INIT=y +CONFIG_SPL_FIT_IMAGE_TINY=y CONFIG_SPL_ETH_SUPPORT=y # CONFIG_SPL_FS_EXT4 is not set CONFIG_SPL_MTD_SUPPORT=y

On Fri, Apr 26, 2019 at 03:21:26PM +0200, Jean-Jacques Hiblot wrote:
The size of the SPL for the am335x_evm is constrained. There is no need to have advanced SPL FIT features, so keep the SPL FIT support tiny.
Signed-off-by: Jean-Jacques Hiblot jjhiblot@ti.com Reviewed-by: Lokesh Vutla lokeshvutla@ti.com
Applied to u-boot/master, thanks!
participants (3)
-
Jean-Jacques Hiblot
-
Lokesh Vutla
-
Tom Rini