
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 albert.aribaud@free.fr --- 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