forked from Minki/linux
MIPS: ralink: allow manual memory override
RT5350 relies on the bootloader setting up the memc correctly. On some boards the setup is incorrect leading to 32 MB being available but only 16 MB being recognized. Allow these boards to manually override the memory range. Signed-off-by: John Crispin <blogic@openwrt.org> Patchwork: http://patchwork.linux-mips.org/patch/8004/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
5433acd81e
commit
15d1112070
@ -53,6 +53,17 @@ void __init device_tree_init(void)
|
||||
unflatten_and_copy_device_tree();
|
||||
}
|
||||
|
||||
static int memory_dtb;
|
||||
|
||||
static int __init early_init_dt_find_memory(unsigned long node,
|
||||
const char *uname, int depth, void *data)
|
||||
{
|
||||
if (depth == 1 && !strcmp(uname, "memory@0"))
|
||||
memory_dtb = 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void __init plat_mem_setup(void)
|
||||
{
|
||||
set_io_port_base(KSEG1);
|
||||
@ -63,7 +74,10 @@ void __init plat_mem_setup(void)
|
||||
*/
|
||||
__dt_setup_arch(__dtb_start);
|
||||
|
||||
if (soc_info.mem_size)
|
||||
of_scan_flat_dt(early_init_dt_find_memory, NULL);
|
||||
if (memory_dtb)
|
||||
of_scan_flat_dt(early_init_dt_scan_memory, NULL);
|
||||
else if (soc_info.mem_size)
|
||||
add_memory_region(soc_info.mem_base, soc_info.mem_size * SZ_1M,
|
||||
BOOT_MEM_RAM);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user