[U-Boot] [PATCH] arm: Don't use printf() in SPL builds
Sughosh Ganu
urwithsughosh at gmail.com
Sat Mar 10 09:33:45 CET 2012
hi Simon,
On Sat Mar 03, 2012 at 12:33:15PM -0800, Simon Glass wrote:
> 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
> size.
>
> 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)
> {
> -#if !defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_LIBCOMMON_SUPPORT)
> + /* 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);
> #endif
I tested with this change on hawkboard, and after applying this
change, the spl size increase is 412 bytes against the 4k increase
that we get with libcommon changes introduced. So this patch works
fine.
Can you please check if libcommon support is needed for the
cam_enc_4xx board -- your relocation patch series did not add
CONFIG_SPL_LIBCOMMON_SUPPORT to this board. This will affect my
patch to initialise gd and bd objects for hawkboard. Please let me
know, and i will spin a patch accordingly.
-sughosh
More information about the U-Boot
mailing list