[U-Boot] [PATCH V2] at91: allow the lowlevel_init to be overwrite by the board

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Wed Feb 4 22:17:22 CET 2009


due to asm weak function link overwrite problem use pre-built object
instead of library.

You will need to build the lib$(BOARD).a the same way

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
---
The asm weak overwrite link problem have been found also present on other arm
And supposed on other arch

the the AR do not use the $(ARFLAGS) because in this case we will have no file as
param to generate the library

Best Regards,
J.
 config.mk                          |    3 +++
 cpu/arm926ejs/at91/Makefile        |    2 +-
 cpu/arm926ejs/at91/lowlevel_init.S |    2 ++
 3 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/config.mk b/config.mk
index b1254e9..94b8c7c 100644
--- a/config.mk
+++ b/config.mk
@@ -76,6 +76,9 @@ STRIP	= $(CROSS_COMPILE)strip
 OBJCOPY = $(CROSS_COMPILE)objcopy
 OBJDUMP = $(CROSS_COMPILE)objdump
 RANLIB	= $(CROSS_COMPILE)RANLIB
+cmd_link_o_target = $(if $(strip $(2)),\
+			$(LD) $(PLATFORM_LDFLAGS) -r -o $(1) $(2) ,\
+			rm -f $@; $(AR) rcs $(1))
 
 #########################################################################
 
diff --git a/cpu/arm926ejs/at91/Makefile b/cpu/arm926ejs/at91/Makefile
index 2d2a888..662657c 100644
--- a/cpu/arm926ejs/at91/Makefile
+++ b/cpu/arm926ejs/at91/Makefile
@@ -36,7 +36,7 @@ OBJS    := $(addprefix $(obj),$(SOBJS) $(COBJS-y))
 all:	$(obj).depend $(LIB)
 
 $(LIB):	$(OBJS)
-	$(AR) $(ARFLAGS) $@ $(OBJS)
+	$(call cmd_link_o_target, $@, $(OBJS))
 
 #########################################################################
 
diff --git a/cpu/arm926ejs/at91/lowlevel_init.S b/cpu/arm926ejs/at91/lowlevel_init.S
index ec6ad5d..54b3f3d 100644
--- a/cpu/arm926ejs/at91/lowlevel_init.S
+++ b/cpu/arm926ejs/at91/lowlevel_init.S
@@ -30,6 +30,8 @@
 #ifndef CONFIG_SKIP_LOWLEVEL_INIT
 
 .globl lowlevel_init
+.weak lowlevel_init
+.set lowlevel_init,function
 lowlevel_init:
 
 	/*
-- 
1.5.6.5



More information about the U-Boot mailing list