[U-Boot] [PATCH] arm: Don't use printf() in SPL builds
Simon Glass
sjg at chromium.org
Thu Mar 15 04:47:43 CET 2012
Hi Sughosh,
On Sat, Mar 10, 2012 at 12:33 AM, Sughosh Ganu <urwithsughosh at gmail.com> wrote:
> 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.
OK good.
>
> 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.
Yes I think this board needs both of these:
#define CONFIG_SPL_LIBCOMMON_SUPPORT
#define CONFIG_SPL_LIBGENERIC_SUPPORT
Regards,
Simon
>
> -sughosh
More information about the U-Boot
mailing list