1
0
Fork 0

MIPS: Netlogic: Fixup memory regions for prefetch

Fix a cache error found in stress test, caused by the prefetch instruction
going beyond valid memory when acessing the last page of a region. Add
the pref_backup logic similar to XLR in XLP too.

Signed-off-by: Jayachandran C <jchandra@broadcom.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/5431/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
hifive-unleashed-5.1
Jayachandran C 2013-06-10 06:41:08 +00:00 committed by Ralf Baechle
parent 4033d38ceb
commit 722138340b
1 changed files with 13 additions and 0 deletions

View File

@ -61,6 +61,18 @@ static void nlm_linux_exit(void)
cpu_wait();
}
static void nlm_fixup_mem(void)
{
const int pref_backup = 512;
int i;
for (i = 0; i < boot_mem_map.nr_map; i++) {
if (boot_mem_map.map[i].type != BOOT_MEM_RAM)
continue;
boot_mem_map.map[i].size -= pref_backup;
}
}
void __init plat_mem_setup(void)
{
panic_timeout = 5;
@ -70,6 +82,7 @@ void __init plat_mem_setup(void)
/* memory and bootargs from DT */
early_init_devtree(initial_boot_params);
nlm_fixup_mem();
}
const char *get_system_type(void)