Patchwork [U-Boot] i.MX28: Fix initial stack pointer position

login
register
mail settings
Submitter Marek Vasut
Date April 2, 2012, 4:21 a.m.
Message ID <1333340494-9604-1-git-send-email-marex@denx.de>
Download mbox | patch
Permalink /patch/150066/
State Accepted
Commit 9ed5dfa852e7b976ba7656713e2de37816cf9fea
Delegated to: Stefano Babic
Headers show

Comments

Marek Vasut - April 2, 2012, 4:21 a.m.
The patch:

  m28evk: Use GENERATED_GBL_DATA_SIZE
  commit 1084606c972ea5f1d89f69bdbd978b867d0ee521

introduced usage of GENERATED_GBL_DATA_SIZE and calculation of initial stack
pointer position defived from that. Due to a small typo, the SP position moved
to 0x21f80, which is past the SRAM area. This didn't manifest on the real
hardware as the SRAM repeats there (address bits in the CPU being ignored).

Though this was caught in QEMU, where it crashed the emulator.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
---
 include/configs/m28evk.h  |    2 +-
 include/configs/mx28evk.h |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

NOTE: I'll get a Tested-by on M28EVK ASAP, probably on wednesday.
Fabio Estevam - April 2, 2012, 2:10 p.m.
On Mon, Apr 2, 2012 at 1:21 AM, Marek Vasut <marex@denx.de> wrote:
> The patch:
>
>  m28evk: Use GENERATED_GBL_DATA_SIZE
>  commit 1084606c972ea5f1d89f69bdbd978b867d0ee521
>
> introduced usage of GENERATED_GBL_DATA_SIZE and calculation of initial stack
> pointer position defived from that. Due to a small typo, the SP position moved
> to 0x21f80, which is past the SRAM area. This didn't manifest on the real
> hardware as the SRAM repeats there (address bits in the CPU being ignored).
>
> Though this was caught in QEMU, where it crashed the emulator.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>

Tested-by: Fabio Estevam <fabio.estevam@freescale.com>

Patch

diff --git a/include/configs/m28evk.h b/include/configs/m28evk.h
index 9de4521..8526dd4 100644
--- a/include/configs/m28evk.h
+++ b/include/configs/m28evk.h
@@ -96,7 +96,7 @@ 
 #define	CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
 /* Point initial SP in SRAM so SPL can use it too. */
 
-#define CONFIG_SYS_INIT_RAM_ADDR	0x00002000
+#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000
 #define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024)
 
 #define CONFIG_SYS_INIT_SP_OFFSET \
diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h
index 705fdab..02f3366 100644
--- a/include/configs/mx28evk.h
+++ b/include/configs/mx28evk.h
@@ -81,7 +81,7 @@ 
 #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
 /* Point initial SP in SRAM so SPL can use it too. */
 
-#define CONFIG_SYS_INIT_RAM_ADDR	0x00002000
+#define CONFIG_SYS_INIT_RAM_ADDR	0x00000000
 #define CONFIG_SYS_INIT_RAM_SIZE	(128 * 1024)
 
 #define CONFIG_SYS_INIT_SP_OFFSET \