|
@@ -433,7 +433,18 @@ void board_init_f (ulong bootflag)
|
|
|
*/
|
|
|
len = (ulong)&_end - CFG_MONITOR_BASE;
|
|
|
|
|
|
+#ifndef CONFIG_MAX_MEM_MAPPED
|
|
|
+#define CONFIG_MAX_MEM_MAPPED (256 << 20)
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifndef CONFIG_VERY_BIG_RAM
|
|
|
addr = CFG_SDRAM_BASE + get_effective_memsize();
|
|
|
+#else
|
|
|
+ /* only allow stack below 256M */
|
|
|
+ addr = CFG_SDRAM_BASE +
|
|
|
+ (gd->ram_size > CONFIG_MAX_MEM_MAPPED) ?
|
|
|
+ CONFIG_MAX_MEM_MAPPED : get_effective_memsize();
|
|
|
+#endif
|
|
|
|
|
|
#ifdef CONFIG_LOGBUFFER
|
|
|
#ifndef CONFIG_ALT_LB_ADDR
|