diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-02-04 07:53:17 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-02-04 07:53:17 +0100 |
commit | 2622e849a1d3d3ef531d1cc33308bb7fd00eee40 (patch) | |
tree | f2be9d9f08444cb93b3a8f87099fe4ff8ac3cd57 /arch/arm/mach-omap2/omap-smp.c | |
parent | 996636ddae5cab8883bd76b996cd4f2ea9a152be (diff) | |
parent | e36f014edff70fc02b3d3d79cead1d58f289332e (diff) | |
download | kernel_replicant_linux-2622e849a1d3d3ef531d1cc33308bb7fd00eee40.tar.gz kernel_replicant_linux-2622e849a1d3d3ef531d1cc33308bb7fd00eee40.tar.bz2 kernel_replicant_linux-2622e849a1d3d3ef531d1cc33308bb7fd00eee40.zip |
Merge tag 'v3.19-rc7' into locking/core, to refresh the branch before applying new changes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/arm/mach-omap2/omap-smp.c')
-rw-r--r-- | arch/arm/mach-omap2/omap-smp.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c index 256e84ef0f67..5305ec7341ec 100644 --- a/arch/arm/mach-omap2/omap-smp.c +++ b/arch/arm/mach-omap2/omap-smp.c @@ -22,6 +22,7 @@ #include <linux/irqchip/arm-gic.h> #include <asm/smp_scu.h> +#include <asm/virt.h> #include "omap-secure.h" #include "omap-wakeupgen.h" @@ -227,8 +228,16 @@ static void __init omap4_smp_prepare_cpus(unsigned int max_cpus) if (omap_secure_apis_support()) omap_auxcoreboot_addr(virt_to_phys(startup_addr)); else - writel_relaxed(virt_to_phys(omap5_secondary_startup), - base + OMAP_AUX_CORE_BOOT_1); + /* + * If the boot CPU is in HYP mode then start secondary + * CPU in HYP mode as well. + */ + if ((__boot_cpu_mode & MODE_MASK) == HYP_MODE) + writel_relaxed(virt_to_phys(omap5_secondary_hyp_startup), + base + OMAP_AUX_CORE_BOOT_1); + else + writel_relaxed(virt_to_phys(omap5_secondary_startup), + base + OMAP_AUX_CORE_BOOT_1); } |