aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-exynos4
diff options
context:
space:
mode:
authorKukjin Kim2011-02-28 20:35:33 +0900
committerKukjin Kim2011-02-28 20:35:33 +0900
commitad849a223f912bfd6c666e0414d0ff368a9dc1a7 (patch)
tree795505232789fcda947c579df4a41862e7e63ae5 /arch/arm/mach-exynos4
parent9c0ff728b86361f4b5c58b9acf9853d682a1b8f8 (diff)
ARM: EXYNOS4: Fix wrong constants in the hotplug assembly code.
This patch fixes wrong constants in the hotplug assembly code for Exynos4 such as Russell's changing in vexpress hotplug and fixes hard-coded control register constatns also. Reported-by: Changhwan Youn <chaos.youn@samsung.com> Cc: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/mach-exynos4')
-rw-r--r--arch/arm/mach-exynos4/hotplug.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm/mach-exynos4/hotplug.c b/arch/arm/mach-exynos4/hotplug.c
index 4c42f9ce1c53..2b5909e2ccd3 100644
--- a/arch/arm/mach-exynos4/hotplug.c
+++ b/arch/arm/mach-exynos4/hotplug.c
@@ -30,13 +30,13 @@ static inline void cpu_enter_lowpower(void)
* Turn off coherency
*/
" mrc p15, 0, %0, c1, c0, 1\n"
- " bic %0, %0, #0x20\n"
+ " bic %0, %0, %3\n"
" mcr p15, 0, %0, c1, c0, 1\n"
" mrc p15, 0, %0, c1, c0, 0\n"
" bic %0, %0, %2\n"
" mcr p15, 0, %0, c1, c0, 0\n"
: "=&r" (v)
- : "r" (0), "Ir" (CR_C)
+ : "r" (0), "Ir" (CR_C), "Ir" (0x40)
: "cc");
}
@@ -49,10 +49,10 @@ static inline void cpu_leave_lowpower(void)
" orr %0, %0, %1\n"
" mcr p15, 0, %0, c1, c0, 0\n"
" mrc p15, 0, %0, c1, c0, 1\n"
- " orr %0, %0, #0x20\n"
+ " orr %0, %0, %2\n"
" mcr p15, 0, %0, c1, c0, 1\n"
: "=&r" (v)
- : "Ir" (CR_C)
+ : "Ir" (CR_C), "Ir" (0x40)
: "cc");
}