summaryrefslogtreecommitdiffstats
path: root/include/configs/microblaze-generic.h
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2015-02-03 16:24:48 +0100
committerMichal Simek <michal.simek@xilinx.com>2015-02-09 15:13:12 +0100
commitca7d22662e1ca1b05fd4cd3d1f80efec93c499ef (patch)
treee94a54b936855a1c2c96e3067c5800586ffa9c7a /include/configs/microblaze-generic.h
parent405e651d705e197babe423ef88e8224e2737fc06 (diff)
downloadtalos-obmc-uboot-ca7d22662e1ca1b05fd4cd3d1f80efec93c499ef.tar.gz
talos-obmc-uboot-ca7d22662e1ca1b05fd4cd3d1f80efec93c499ef.zip
microblaze: spl: Do not call mem_malloc_init and use early alloc
This patch has some parts connected together: - Use _gd in bss section which is automatically cleared Location at SPL_MALLOC_END wasn't cleared at all - Use MALLOC_F_LEN(early alloc) instead of FULL MALLOC (mem_malloc_init is not called at all) - Simplify malloc and stack init. At the end of SPL addr is malloc area and below is stack Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'include/configs/microblaze-generic.h')
-rw-r--r--include/configs/microblaze-generic.h32
1 files changed, 11 insertions, 21 deletions
diff --git a/include/configs/microblaze-generic.h b/include/configs/microblaze-generic.h
index 770acbea69..166ab4f056 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -113,7 +113,12 @@
#endif
#define CONFIG_SYS_MALLOC_LEN 0xC0000
-#define CONFIG_SYS_MALLOC_F_LEN 1024
+#ifndef CONFIG_SPL_BUILD
+# define CONFIG_SYS_MALLOC_F_LEN 1024
+#else
+# define CONFIG_SYS_MALLOC_SIMPLE
+# define CONFIG_SYS_MALLOC_F_LEN 0x150
+#endif
/* Stack location before relocation */
#define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_TEXT_BASE
@@ -426,25 +431,11 @@
/* BRAM start */
#define CONFIG_SYS_INIT_RAM_ADDR 0x0
/* BRAM size - will be generated */
-#define CONFIG_SYS_INIT_RAM_SIZE 0x10000
-/* Stack pointer prior relocation, must situated at on-chip RAM */
-#define CONFIG_SYS_SPL_MALLOC_END (CONFIG_SYS_INIT_RAM_ADDR + \
- CONFIG_SYS_INIT_RAM_SIZE - \
- GENERATED_GBL_DATA_SIZE)
+#define CONFIG_SYS_INIT_RAM_SIZE 0x100000
-#define CONFIG_SYS_SPL_MALLOC_SIZE 0x100
-
-/*
- * The main reason to do it in this way is that MALLOC_START
- * can't be defined - common/spl/spl.c
- */
-#if (CONFIG_SYS_SPL_MALLOC_SIZE != 0)
-# define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_SPL_MALLOC_END - \
- CONFIG_SYS_SPL_MALLOC_SIZE)
-# define CONFIG_SPL_STACK_ADDR CONFIG_SYS_SPL_MALLOC_START
-#else
-# define CONFIG_SPL_STACK_ADDR CONFIG_SYS_SPL_MALLOC_END
-#endif
+# define CONFIG_SPL_STACK_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \
+ CONFIG_SYS_INIT_RAM_SIZE - \
+ CONFIG_SYS_MALLOC_F_LEN)
/* Just for sure that there is a space for stack */
#define CONFIG_SPL_STACK_SIZE 0x100
@@ -453,8 +444,7 @@
#define CONFIG_SPL_MAX_FOOTPRINT (CONFIG_SYS_INIT_RAM_SIZE - \
CONFIG_SYS_INIT_RAM_ADDR - \
- GENERATED_GBL_DATA_SIZE - \
- CONFIG_SYS_SPL_MALLOC_SIZE - \
+ CONFIG_SYS_MALLOC_F_LEN - \
CONFIG_SPL_STACK_SIZE)
#endif /* __CONFIG_H */
OpenPOWER on IntegriCloud