From: Eugen.Hristev@microchip.com Date: Wed, 28 Nov 2018 09:33:43 +0000 (+0000) Subject: ARM: at91: lds: add test for SPL binary size and bss size X-Git-Tag: v2019.01-rc2~25^2~25 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=bbaeb7ac2200c6505a76f1bf5ba85cfe58fb750b;p=oweals%2Fu-boot.git ARM: at91: lds: add test for SPL binary size and bss size Add test for the SPL binary size and the bss section size. This will throw an error at build time if the SPL sections do not fit in the designated RAM area, thus avoiding oversizing the SPL. Based on original work by Wenyou Yang. Signed-off-by: Eugen Hristev --- diff --git a/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds b/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds index eca78f8104..b714e93b3b 100644 --- a/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds +++ b/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds @@ -48,3 +48,13 @@ SECTIONS __bss_end = .; } >.sdram } + +#if defined(CONFIG_SPL_MAX_SIZE) +ASSERT(__image_copy_end - __start < (CONFIG_SPL_MAX_SIZE), \ + "SPL image too big"); +#endif + +#if defined(CONFIG_SPL_BSS_MAX_SIZE) +ASSERT(__bss_end - __bss_start < (CONFIG_SPL_BSS_MAX_SIZE), \ + "SPL image BSS too big"); +#endif