Skip to content
Snippets Groups Projects
Commit fafbc6c0 authored by Andre Przywara's avatar Andre Przywara Committed by Tom Rini
Browse files

ARM: enable ARMv7 virt support for the Arndale board


To enable hypervisors utilizing the ARMv7 virtualization extension
on the Arndale board, add the simple SMP pen address writer function
and add the required configuration variables to switch all cores to
HYP mode before launching the OS.
This allows booting KVM and Xen directly from u-boot.

Reviewed-by: default avatarChristoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: default avatarAndre Przywara <andre.przywara@linaro.org>
Signed-off-by: default avatarChristoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: default avatarAndre Przywara <andre.przywara@arm.com>
parent 0bf62d7b
No related branches found
No related tags found
No related merge requests found
...@@ -117,3 +117,13 @@ int checkboard(void) ...@@ -117,3 +117,13 @@ int checkboard(void)
return 0; return 0;
} }
#endif #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
...@@ -250,4 +250,12 @@ ...@@ -250,4 +250,12 @@
/* Enable Time Command */ /* Enable Time Command */
#define CONFIG_CMD_TIME #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 */ #endif /* __CONFIG_H */
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