[U-Boot] [PATCH] arm: Don't use printf() in SPL builds

Simon Glass sjg at chromium.org
Sat Mar 3 21:33:15 CET 2012

raise() likes to call printf() if it is available, but in SPL builds it
either is not available, or adds a large chunk to the resulting image

So don't call it even if it is available.

This change reduces SPL size from 10KB to 6.3KB on hawkboard, for
example, using generic relocation.

Signed-off-by: Simon Glass <sjg at chromium.org>
 arch/arm/lib/eabi_compat.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/arch/arm/lib/eabi_compat.c b/arch/arm/lib/eabi_compat.c
index 2028dbd..44eebe0 100644
--- a/arch/arm/lib/eabi_compat.c
+++ b/arch/arm/lib/eabi_compat.c
@@ -13,7 +13,8 @@
 int raise (int signum)
+	/* Even if printf() is available, it's large. Punt it for SPL builds */
+#if !defined(CONFIG_SPL_BUILD)
 	printf("raise: Signal # %d caught\n", signum);
 	return 0;

More information about the U-Boot mailing list