armv7/exynos5420: Configure CPU cores for kernel to enable SMP.

The SMP on Exynos 5420 requires setting a special page and entry wrappers in
firmware side (SRAM) so kernel can start cores (and to switch clusters).

Change-Id: I77ca98bb6cff5b13e95dd29228e4536302f0aee9
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/64770
Reviewed-by: Ronald G. Minnich <rminnich@chromium.org>
(cherry picked from commit 4a11c7ab78cc0811df0f88763b0af8b9f24e5433)
Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com>
Reviewed-on: http://review.coreboot.org/6405
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
This commit is contained in:
Hung-Te Lin
2013-08-06 20:37:55 +08:00
committed by Isaac Christensen
parent c3fda416a7
commit 0682cfefdb
6 changed files with 324 additions and 4 deletions

View File

@@ -98,4 +98,10 @@ inline static void sev(void)
asm volatile ("sev");
}
/* puts CPU into SVC32 mode and disable interrupts. */
inline static void set_svc32_mode(void)
{
asm volatile("msr cpsr_c, %0" :: "r"(0x13 | 0xc0));
}
#endif /* __ARCH_CPU_H__ */