arm: armv7: omap3: Fix restore sequence in lowlevel_init
authorAlbert ARIBAUD <albert.u.boot@aribaud.net>
Sun, 7 Oct 2012 09:24:10 +0000 (09:24 +0000)
committerTom Rini <trini@ti.com>
Mon, 8 Oct 2012 18:15:04 +0000 (11:15 -0700)
commitdec96689caac25780174b4899032faf788824ac4
tree49b415b3a1da052b6b3d7fcbf146364991a28fc4
parent8cc64bafc00415877ed51769ca90cb562ded5c01
arm: armv7: omap3: Fix restore sequence in lowlevel_init

The restore sequence in lowlevel_init was in the wrong order,
causing lr to lose its original value and be set equal to ip
instead. Also, its use of the stack clashes with that of
s_init, so move the s_init call after the restore and turn
it  into a tail-optimized branch.

Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
arch/arm/cpu/armv7/omap3/lowlevel_init.S