[U-Boot] [PATCH v2] ARM: at91: lds: add test for SPL binary size and bss size
Eugen.Hristev at microchip.com
Eugen.Hristev at microchip.com
Wed Nov 28 09:33:43 UTC 2018
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 <eugen.hristev at microchip.com>
---
This patch is a rework of the initial series:
[PATCH 0/4] at91: SPL size check for at91 boards
It should work fine for all the boards now, so keeping SPL enabled
for all the affected boards.
Thanks to Ben Whitten for testing and solution
Changes in v2:
- replaced wrong variable __image_copy_start with __start
arch/arm/mach-at91/arm926ejs/u-boot-spl.lds | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds b/arch/arm/mach-at91/arm926ejs/u-boot-spl.lds
index eca78f8..b714e93 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
--
2.7.4
More information about the U-Boot
mailing list