Skip to content
Snippets Groups Projects
Commit 81d93e5c authored by Kumar Gala's avatar Kumar Gala Committed by Wolfgang Denk
Browse files

ppc: Allow boards to specify effective amount of memory


For historical reasons we limited the stack to 256M because some boards
could only map that much via BATS.  However newer boards are capable of
mapping more memory (for example 85xx is capable of doing up to 2G).

Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent 755c35f5
No related branches found
No related tags found
No related merge requests found
......@@ -361,6 +361,20 @@ init_fnc_t *init_sequence[] = {
NULL, /* Terminate this list */
};
#ifndef CONFIG_MAX_MEM_MAPPED
#define CONFIG_MAX_MEM_MAPPED (256 << 20)
#endif
ulong get_effective_memsize(void)
{
#ifndef CONFIG_VERY_BIG_RAM
return gd->ram_size;
#else
/* limit stack to what we can reasonable map */
return ((gd->ram_size > CONFIG_MAX_MEM_MAPPED) ?
CONFIG_MAX_MEM_MAPPED : gd->ram_size);
#endif
}
/************************************************************************
*
* This is the first part of the initialization sequence that is
......@@ -419,13 +433,7 @@ void board_init_f (ulong bootflag)
*/
len = (ulong)&_end - CFG_MONITOR_BASE;
#ifndef CONFIG_VERY_BIG_RAM
addr = CFG_SDRAM_BASE + gd->ram_size;
#else
/* only allow stack below 256M */
addr = CFG_SDRAM_BASE +
(gd->ram_size > 256 << 20) ? 256 << 20 : gd->ram_size;
#endif
addr = CFG_SDRAM_BASE + get_effective_memsize();
#ifdef CONFIG_LOGBUFFER
/* reserve kernel log buffer */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment