
Hi Sughosh,
On Sat, Mar 10, 2012 at 12:33 AM, Sughosh Ganu urwithsughosh@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@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