[PATCH] board: stemmy: Increase boot image to 16 MB

When using a recent kernel with a bunch of compiled-in stuff the kernel image easily becomes bigger than 8 MB yielding this error:
Loading Kernel Image Image too large: increase CONFIG_SYS_BOOTM_LEN Must RESET board to recover
Fix this by bumping to SZ_16MB.
Cc: Stephan Gerhold stephan@gerhold.net Signed-off-by: Linus Walleij linus.walleij@linaro.org --- include/configs/stemmy.h | 1 + 1 file changed, 1 insertion(+)
diff --git a/include/configs/stemmy.h b/include/configs/stemmy.h index ed79b1203901..f4700a45daf5 100644 --- a/include/configs/stemmy.h +++ b/include/configs/stemmy.h @@ -14,6 +14,7 @@ * bootloader. New images are loaded at the same address for compatibility. */ #define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_BOOTM_LEN SZ_16M
/* FIXME: This should be loaded from device tree... */ #define CONFIG_SYS_L2_PL310

On Fri, Nov 19, 2021 at 03:33:21PM +0100, Linus Walleij wrote:
When using a recent kernel with a bunch of compiled-in stuff the kernel image easily becomes bigger than 8 MB yielding this error:
Loading Kernel Image Image too large: increase CONFIG_SYS_BOOTM_LEN Must RESET board to recover
Fix this by bumping to SZ_16MB.
Cc: Stephan Gerhold stephan@gerhold.net Signed-off-by: Linus Walleij linus.walleij@linaro.org
include/configs/stemmy.h | 1 + 1 file changed, 1 insertion(+)
diff --git a/include/configs/stemmy.h b/include/configs/stemmy.h index ed79b1203901..f4700a45daf5 100644 --- a/include/configs/stemmy.h +++ b/include/configs/stemmy.h @@ -14,6 +14,7 @@
- bootloader. New images are loaded at the same address for compatibility.
*/ #define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_BOOTM_LEN SZ_16M
/* FIXME: This should be loaded from device tree... */ #define CONFIG_SYS_L2_PL310
So, the default for CONFIG_SYS_BOOTM_LEN is clearly too small and should be addressed broadly. And, ugh, I don't see a maximum size for the kernel itself in https://www.kernel.org/doc/Documentation/arm64/booting.rst but SZ_64M is the common "we hope this is always large enough" value used, so can we push stemmy there as well? Thanks.

On Fri, Nov 19, 2021 at 01:12:43PM -0500, Tom Rini wrote:
On Fri, Nov 19, 2021 at 03:33:21PM +0100, Linus Walleij wrote:
When using a recent kernel with a bunch of compiled-in stuff the kernel image easily becomes bigger than 8 MB yielding this error:
Loading Kernel Image Image too large: increase CONFIG_SYS_BOOTM_LEN Must RESET board to recover
Fix this by bumping to SZ_16MB.
Cc: Stephan Gerhold stephan@gerhold.net Signed-off-by: Linus Walleij linus.walleij@linaro.org
include/configs/stemmy.h | 1 + 1 file changed, 1 insertion(+)
diff --git a/include/configs/stemmy.h b/include/configs/stemmy.h index ed79b1203901..f4700a45daf5 100644 --- a/include/configs/stemmy.h +++ b/include/configs/stemmy.h @@ -14,6 +14,7 @@
- bootloader. New images are loaded at the same address for compatibility.
*/ #define CONFIG_SYS_INIT_SP_ADDR CONFIG_SYS_TEXT_BASE +#define CONFIG_SYS_BOOTM_LEN SZ_16M
/* FIXME: This should be loaded from device tree... */ #define CONFIG_SYS_L2_PL310
So, the default for CONFIG_SYS_BOOTM_LEN is clearly too small and should be addressed broadly. And, ugh, I don't see a maximum size for the kernel itself in https://www.kernel.org/doc/Documentation/arm64/booting.rst but SZ_64M is the common "we hope this is always large enough" value used, so can we push stemmy there as well? Thanks.
I think there is usually less needed on ARM32 since Linux will decompress itself, so the size here is actually for the *compressed* kernel image, not the decompressed one. But it doesn't hurt to have it larger I guess, so 64 MiB also sounds good to me.
Linus, can you send a v2 with SZ_64M? Also feel free to add my Reviewed-by: Stephan Gerhold stephan@gerhold.net
Thanks, Stephan
participants (3)
-
Linus Walleij
-
Stephan Gerhold
-
Tom Rini