diff --git a/board/samsung/arndale/arndale.c b/board/samsung/arndale/arndale.c index ef88314f7d..83fd3bd754 100644 --- a/board/samsung/arndale/arndale.c +++ b/board/samsung/arndale/arndale.c @@ -117,3 +117,13 @@ int checkboard(void) return 0; } #endif + +#ifdef CONFIG_S5P_PA_SYSRAM +void smp_set_core_boot_addr(unsigned long addr, int corenr) +{ + writel(addr, CONFIG_S5P_PA_SYSRAM); + + /* make sure this write is really executed */ + __asm__ volatile ("dsb\n"); +} +#endif diff --git a/include/configs/arndale.h b/include/configs/arndale.h index 64b54ab22b..75f9933778 100644 --- a/include/configs/arndale.h +++ b/include/configs/arndale.h @@ -250,4 +250,12 @@ /* Enable Time Command */ #define CONFIG_CMD_TIME +#define CONFIG_S5P_PA_SYSRAM 0x02020000 +#define CONFIG_SMP_PEN_ADDR CONFIG_S5P_PA_SYSRAM + +/* The PERIPHBASE in the CBAR register is wrong on the Arndale, so override it */ +#define CONFIG_ARM_GIC_BASE_ADDRESS 0x10480000 + +#define CONFIG_ARMV7_VIRT + #endif /* __CONFIG_H */