From: Tetsuyuki Kobayashi Date: Thu, 4 Oct 2012 18:39:22 +0000 (+0000) Subject: arm: rmobile: bugfix: wrong register saving in lowlevel_init X-Git-Tag: v2012.10-rc3~5 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=03eecab9a1ba5f0226987a6ea58eb75a41d23408;p=u-boot arm: rmobile: bugfix: wrong register saving in lowlevel_init lowlevel_init() of rmobile badly assumed that ip register holds return address. The commit "63ee53a7 armv7 cpu_init_crit: Simplify code" breaks this assumption. This patch removes this bad assumption and simplify code. Signed-off-by: Tetsuyuki Kobayashi --- diff --git a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S index 1bd391e840..4fdca06491 100644 --- a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S +++ b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S @@ -76,17 +76,7 @@ loop0: bne loop0 ldr sp, MERAM_STACK - - str ip, [sp] /* stash old link register */ - mov ip, lr /* save link reg across call */ - - bl s_init - - ldr ip, [sp] /* restore save ip */ - mov lr, ip /* restore link reg */ - - /* back to arch calling code */ - mov pc, lr + b s_init .pool .align 4