[U-Boot] [PATCH 1/7] ARM: fix relocation on ARM926EJS

José Miguel Gonçalves jose.goncalves at inov.pt
Wed Sep 12 13:15:17 CEST 2012


Jumping to board_init_r is not performed due to a bug on address computation.
Relocation offsets are not needed when building SPL.

Signed-off-by: José Miguel Gonçalves <jose.goncalves at inov.pt>
---
 arch/arm/cpu/arm926ejs/start.S |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 6f05f1a..2da5342 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -325,7 +325,7 @@ _nand_boot_ofs:
 	.word nand_boot
 #else
 	ldr	r0, _board_init_r_ofs
-	ldr	r1, _TEXT_BASE
+	adr	r1, _start
 	add	lr, r0, r1
 	add	lr, lr, r9
 	/* setup parameters for board_init_r */
@@ -338,12 +338,14 @@ _board_init_r_ofs:
 	.word board_init_r - _start
 #endif
 
+#ifndef CONFIG_SPL_BUILD
 _rel_dyn_start_ofs:
 	.word __rel_dyn_start - _start
 _rel_dyn_end_ofs:
 	.word __rel_dyn_end - _start
 _dynsym_start_ofs:
 	.word __dynsym_start - _start
+#endif
 
 /*
  *************************************************************************
-- 
1.7.9.5



More information about the U-Boot mailing list