
Wolfgang Denk wrote:
Dear Ilko Iliev,
In message 48FDDC1C.2080808@ronetix.at you wrote:
This patch allows to have an at91 board specific lowlevel_init.S
Signed-off-by: Ilko Iliev iliev@ronetix.at
index ec6ad5d..7882e89 100644 --- a/cpu/arm926ejs/at91/lowlevel_init.S +++ b/cpu/arm926ejs/at91/lowlevel_init.S @@ -27,7 +27,7 @@ #include <config.h> #include <version.h>
-#ifndef CONFIG_SKIP_LOWLEVEL_INIT +#if !defined(CONFIG_SKIP_LOWLEVEL_INIT) && !defined(CONFIG_USER_LOWLEVEL_INIT)
.globl lowlevel_init lowlevel_init: @@ -39,5 +39,5 @@ lowlevel_init: mov pc, lr
.ltorg
-#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
+#endif /* !CONFIG_SKIP_LOWLEVEL_INIT && !CONFIG_USER_LOWLEVEL_INIT */
Maybe instead of adding mor #ifdef'ery here, we can turn lowlevel_init() into a "weak" function that can be redefined by board specific code?
The lowlevel_init() is an assembler function called from another assembler function and the attribute .weak doesn't work. There are no assembler file in the U-BOOT tree which use weak functions. Do you know how can I make an assembler function weak?
best regards, Ilko Iilev