RFC again. WARNING -- apply *above* the previous one, not instead!

I *think* the current jump to nand_boot was wrong, because it
loads an offset but does not add it to the relocated base before
jumping to it. I thus applied the same sequence as board_init_r.

Wolfgang, please test to see if tx25 works with this.

Alexander, Darius, others who already tested the previous RFC patch,
please test for non-regression.

Amicalement,
Albert.

Signed-off-by: Albert Aribaud <[email protected]>
---
 arch/arm/cpu/arm926ejs/start.S |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/start.S b/arch/arm/cpu/arm926ejs/start.S
index 6dcc9b4..098b426 100644
--- a/arch/arm/cpu/arm926ejs/start.S
+++ b/arch/arm/cpu/arm926ejs/start.S
@@ -276,7 +276,10 @@ clbss_l:str        r2, [r0]                /* clear 
loop...                    */
  */
 #ifdef CONFIG_NAND_SPL
        ldr     r0, _nand_boot_ofs
-       mov     pc, r0
+       adr     r1, _start
+       add     lr, r0, r1
+       add     lr, lr, r9
+       mov     pc, lr
 
 _nand_boot_ofs:
        .word nand_boot
-- 
1.7.1

_______________________________________________
U-Boot mailing list
[email protected]
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to