ARM: CPU hotplug: fix hard-coded control register constants
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 19 Dec 2010 11:36:33 +0000 (11:36 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 20 Dec 2010 15:09:16 +0000 (15:09 +0000)
Use the definition we've provided in asm/system.h rather than
numeric constants.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-realview/hotplug.c
arch/arm/mach-s5pv310/hotplug.c
arch/arm/mach-tegra/hotplug.c

index b6387cf..a87523d 100644 (file)
@@ -31,10 +31,10 @@ static inline void cpu_enter_lowpower(void)
        "       bic     %0, %0, #0x20\n"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
        "       mrc     p15, 0, %0, c1, c0, 0\n"
-       "       bic     %0, %0, #0x04\n"
+       "       bic     %0, %0, %2\n"
        "       mcr     p15, 0, %0, c1, c0, 0\n"
          : "=&r" (v)
-         : "r" (0)
+         : "r" (0), "Ir" (CR_C)
          : "cc");
 }
 
@@ -43,13 +43,13 @@ static inline void cpu_leave_lowpower(void)
        unsigned int v;
 
        asm volatile(   "mrc    p15, 0, %0, c1, c0, 0\n"
-       "       orr     %0, %0, #0x04\n"
+       "       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"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
          : "=&r" (v)
-         :
+         : "Ir" (CR_C)
          : "cc");
 }
 
index 951ba6d..afa5392 100644 (file)
@@ -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, %2\n"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
        "       mrc     p15, 0, %0, c1, c0, 0\n"
        "       bic     %0, %0, #0x04\n"
        "       mcr     p15, 0, %0, c1, c0, 0\n"
          : "=&r" (v)
-         : "r" (0)
+         : "r" (0), "Ir" (CR_C)
          : "cc");
 }
 
@@ -46,13 +46,13 @@ static inline void cpu_leave_lowpower(void)
 
        asm volatile(
        "mrc    p15, 0, %0, c1, c0, 0\n"
-       "       orr     %0, %0, #0x04\n"
+       "       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"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
          : "=&r" (v)
-         :
+         : "Ir" (CR_C)
          : "cc");
 }
 
index 17faf77..a5cb1ce 100644 (file)
@@ -26,13 +26,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, %2\n"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
        "       mrc     p15, 0, %0, c1, c0, 0\n"
        "       bic     %0, %0, #0x04\n"
        "       mcr     p15, 0, %0, c1, c0, 0\n"
          : "=&r" (v)
-         : "r" (0)
+         : "r" (0), "Ir" (CR_C)
          : "cc");
 }
 
@@ -42,13 +42,13 @@ static inline void cpu_leave_lowpower(void)
 
        asm volatile(
        "mrc    p15, 0, %0, c1, c0, 0\n"
-       "       orr     %0, %0, #0x04\n"
+       "       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"
        "       mcr     p15, 0, %0, c1, c0, 1\n"
          : "=&r" (v)
-         :
+         : "Ir" (CR_C)
          : "cc");
 }