summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-imx/src.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2011-12-15 08:21:21 +0100
committerIngo Molnar <mingo@elte.hu>2011-12-15 08:21:30 +0100
commit6a54aebf6978e9f296a4d3da3e40af425163c22e (patch)
tree8217c7114db02d8b69c22fc44880749426949bc3 /arch/arm/mach-imx/src.c
parent067491b7313c41f49607fce782d29344d1472587 (diff)
parentdc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50 (diff)
downloadblackbird-obmc-linux-6a54aebf6978e9f296a4d3da3e40af425163c22e.tar.gz
blackbird-obmc-linux-6a54aebf6978e9f296a4d3da3e40af425163c22e.zip
Merge commit 'v3.2-rc5' into sched/core
Merge reason: Pick up the latest fixes. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/arm/mach-imx/src.c')
-rw-r--r--arch/arm/mach-imx/src.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c
index 36cacbd0dcc2..a8e33681b732 100644
--- a/arch/arm/mach-imx/src.c
+++ b/arch/arm/mach-imx/src.c
@@ -14,6 +14,7 @@
#include <linux/io.h>
#include <linux/of.h>
#include <linux/of_address.h>
+#include <linux/smp.h>
#include <asm/unified.h>
#define SRC_SCR 0x000
@@ -23,10 +24,15 @@
static void __iomem *src_base;
+#ifndef CONFIG_SMP
+#define cpu_logical_map(cpu) 0
+#endif
+
void imx_enable_cpu(int cpu, bool enable)
{
u32 mask, val;
+ cpu = cpu_logical_map(cpu);
mask = 1 << (BP_SRC_SCR_CORE1_ENABLE + cpu - 1);
val = readl_relaxed(src_base + SRC_SCR);
val = enable ? val | mask : val & ~mask;
@@ -35,6 +41,7 @@ void imx_enable_cpu(int cpu, bool enable)
void imx_set_cpu_jump(int cpu, void *jump_addr)
{
+ cpu = cpu_logical_map(cpu);
writel_relaxed(BSYM(virt_to_phys(jump_addr)),
src_base + SRC_GPR1 + cpu * 8);
}
OpenPOWER on IntegriCloud