diff mbox

[U-Boot,2/8] ARM: keystone2: spl: Fix stack allocation with CONFIG_SYS_MALLOC_F_LEN

Message ID 1442655023-15966-3-git-send-email-lokeshvutla@ti.com
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Lokesh Vutla Sept. 19, 2015, 9:30 a.m. UTC
If CONFIG_SYS_MALLOC_F_LEN is enabled, the stack is moved down to the
specified size to make the malloc function available before relocation.
But on keystone platforms SYS_SPL_MALLOC is immediately preceding stack,
which is causing an overlap with this config enabled.
So leave a gap between malloc space and stack space.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
---
 include/configs/ti_armv7_keystone2.h | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Tom Rini Oct. 22, 2015, 9:20 p.m. UTC | #1
On Sat, Sep 19, 2015 at 03:00:17PM +0530, Lokesh Vutla wrote:

> If CONFIG_SYS_MALLOC_F_LEN is enabled, the stack is moved down to the
> specified size to make the malloc function available before relocation.
> But on keystone platforms SYS_SPL_MALLOC is immediately preceding stack,
> which is causing an overlap with this config enabled.
> So leave a gap between malloc space and stack space.
> 
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
index 58c98ce..acc686c 100644
--- a/include/configs/ti_armv7_keystone2.h
+++ b/include/configs/ti_armv7_keystone2.h
@@ -32,6 +32,12 @@ 
 #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SPL_TEXT_BASE - \
 					GENERATED_GBL_DATA_SIZE)
 
+#ifdef CONFIG_SYS_MALLOC_F_LEN
+#define SPL_MALLOC_F_SIZE	CONFIG_SYS_MALLOC_F_LEN
+#else
+#define SPL_MALLOC_F_SIZE	0
+#endif
+
 /* SPL SPI Loader Configuration */
 #define CONFIG_SPL_PAD_TO		65536
 #define CONFIG_SPL_MAX_SIZE		(CONFIG_SPL_PAD_TO - 8)
@@ -44,6 +50,7 @@ 
 #define CONFIG_SPL_STACK_SIZE		(8 * 1024)
 #define CONFIG_SPL_STACK		(CONFIG_SYS_SPL_MALLOC_START + \
 					CONFIG_SYS_SPL_MALLOC_SIZE + \
+					SPL_MALLOC_F_SIZE + \
 					CONFIG_SPL_STACK_SIZE - 4)
 #define CONFIG_SPL_SPI_FLASH_SUPPORT
 #define CONFIG_SPL_SPI_SUPPORT