diff options
author | Lennart Sorensen <lsorense@csclub.uwaterloo.ca> | 2015-01-06 00:45:45 +0100 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2015-01-06 00:48:21 +0100 |
commit | 999f934de195a1506089b52c77429fdba25da688 (patch) | |
tree | ce34518e411d34dddb638c3d218cd49b8d3d2356 /arch/arm/mach-omap2/common.h | |
parent | ARM: dra7xx: Fix counter frequency drift for AM572x errata i856 (diff) | |
download | linux-999f934de195a1506089b52c77429fdba25da688.tar.xz linux-999f934de195a1506089b52c77429fdba25da688.zip |
ARM: omap5/dra7xx: Enable booting secondary CPU in HYP mode
If the boot loader enables HYP mode on the boot CPU, the secondary CPU
also needs to call into the ROM to switch to HYP mode before booting.
The firmwares on the omap5 and dra7xx unfortunately do not take care
of this, so it has to be handled by the kernel.
This patch is based on "[PATCH 2/2] ARM: OMAP5: Add HYP mode entry support
for secondary CPUs" by Santosh Shilimkar <santosh.shilimkar@ti.com>,
except this version does not require a compile time CONFIG to control
if it should enable HYP mode or not, it simply does it based on the mode
of the boot CPU, so it works whether the CPU boots in SVC or HYP mode,
and should even work as a guest kernel inside kvm if qemu decides to
support emulating the omap5 or dra7xx.
Cc: stable@vger.kernel.org #v3.16+
Signed-off-by: Len Sorensen <lsorense@csclub.uwaterloo.ca>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/common.h')
-rw-r--r-- | arch/arm/mach-omap2/common.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h index 377eea849e7b..db57741c9c8a 100644 --- a/arch/arm/mach-omap2/common.h +++ b/arch/arm/mach-omap2/common.h @@ -249,6 +249,7 @@ extern void omap4_cpu_die(unsigned int cpu); extern struct smp_operations omap4_smp_ops; extern void omap5_secondary_startup(void); +extern void omap5_secondary_hyp_startup(void); #endif #if defined(CONFIG_SMP) && defined(CONFIG_PM) |