From ae45ac76356c84b8e389ff69b5d14f1e9112933e Mon Sep 17 00:00:00 2001 From: Paul Mundt Date: Fri, 15 Jan 2010 15:13:48 +0900 Subject: [PATCH] --- yaml --- r: 181090 b: refs/heads/master c: f0cb77372c3cf8c0cb17bbfb30a62506ea119286 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/sh/kernel/cpu/sh4a/smp-shx3.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index d1d4d6b094ad..adc79c25f606 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a6198a238baceae9d4e0ce3915f6d239c89b5c08 +refs/heads/master: f0cb77372c3cf8c0cb17bbfb30a62506ea119286 diff --git a/trunk/arch/sh/kernel/cpu/sh4a/smp-shx3.c b/trunk/arch/sh/kernel/cpu/sh4a/smp-shx3.c index 5863e0c4d02f..11bf4c1e25c0 100644 --- a/trunk/arch/sh/kernel/cpu/sh4a/smp-shx3.c +++ b/trunk/arch/sh/kernel/cpu/sh4a/smp-shx3.c @@ -78,7 +78,10 @@ void __init plat_prepare_cpus(unsigned int max_cpus) void plat_start_cpu(unsigned int cpu, unsigned long entry_point) { - __raw_writel(entry_point, RESET_REG(cpu)); + if (__in_29bit_mode()) + __raw_writel(entry_point, RESET_REG(cpu)); + else + __raw_writel(virt_to_phys(entry_point), RESET_REG(cpu)); if (!(__raw_readl(STBCR_REG(cpu)) & STBCR_MSTP)) __raw_writel(STBCR_MSTP, STBCR_REG(cpu));