summaryrefslogtreecommitdiff
path: root/arch/arm/cpu
diff options
context:
space:
mode:
authorTetsuyuki Kobayashi <koba@kmckk.co.jp>2012-10-04 18:39:22 +0000
committerTom Rini <trini@ti.com>2012-10-08 11:15:04 -0700
commit03eecab9a1ba5f0226987a6ea58eb75a41d23408 (patch)
treebafc3f3e77b603ebb3e679e6fdc922c400ac16f1 /arch/arm/cpu
parent8a10180d62bb50a1f19441494bf9a5cea29ccfda (diff)
downloadu-boot-imx-03eecab9a1ba5f0226987a6ea58eb75a41d23408.zip
u-boot-imx-03eecab9a1ba5f0226987a6ea58eb75a41d23408.tar.gz
u-boot-imx-03eecab9a1ba5f0226987a6ea58eb75a41d23408.tar.bz2
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 <koba@kmckk.co.jp>
Diffstat (limited to 'arch/arm/cpu')
-rw-r--r--arch/arm/cpu/armv7/rmobile/lowlevel_init.S12
1 files changed, 1 insertions, 11 deletions
diff --git a/arch/arm/cpu/armv7/rmobile/lowlevel_init.S b/arch/arm/cpu/armv7/rmobile/lowlevel_init.S
index 1bd391e..4fdca06 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