summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/freescale-mx35-3ds
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2014-12-16 10:42:15 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2015-03-09 06:34:17 +0100
commite74955c2fd8cc8d285772cdb84be8c8bec6d75ff (patch)
tree57bcef84b198da573cf1bbeaa895cfdea844284d /arch/arm/boards/freescale-mx35-3ds
parentaac3b3a15a21a555141009c57f270206b49ec8d8 (diff)
downloadbarebox-e74955c2fd8cc8d285772cdb84be8c8bec6d75ff.tar.gz
barebox-e74955c2fd8cc8d285772cdb84be8c8bec6d75ff.tar.xz
ARM: i.MX: boards: Setup stack before calling imx*_barebox_entry
This allows imx*_barebox_entry to use the stack. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/freescale-mx35-3ds')
-rw-r--r--arch/arm/boards/freescale-mx35-3ds/lowlevel_init.S6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/arm/boards/freescale-mx35-3ds/lowlevel_init.S b/arch/arm/boards/freescale-mx35-3ds/lowlevel_init.S
index 6d37f35a2e..0f9e813191 100644
--- a/arch/arm/boards/freescale-mx35-3ds/lowlevel_init.S
+++ b/arch/arm/boards/freescale-mx35-3ds/lowlevel_init.S
@@ -60,6 +60,9 @@ CCM_BASE_ADDR_W: .word MX35_CCM_BASE_ADDR
barebox_arm_reset_vector:
bl arm_cpu_lowlevel_init
+ /* Setup a temporary stack in internal SRAM */
+ ldr sp, =MX35_IRAM_BASE_ADDR + MX35_IRAM_SIZE - 4
+
mrc 15, 0, r1, c1, c0, 0
mrc 15, 0, r0, c1, c0, 1
@@ -155,9 +158,6 @@ barebox_arm_reset_vector:
str r3, [r0, #0x30]
#ifdef CONFIG_ARCH_IMX_EXTERNAL_BOOT_NAND
- /* Setup a temporary stack in internal SRAM */
- ldr sp, =MX35_IRAM_BASE_ADDR + MX35_IRAM_SIZE - 4
-
mov r0, #0
b imx35_barebox_boot_nand_external
#endif /* CONFIG_ARCH_IMX_EXTERNAL_BOOT_NAND */