|
@@ -201,12 +201,12 @@ static noinline int do_armada_370_xp_cpu_suspend(unsigned long deepidle)
|
|
|
|
|
|
/* Test the CR_C bit and set it if it was cleared */
|
|
/* Test the CR_C bit and set it if it was cleared */
|
|
asm volatile(
|
|
asm volatile(
|
|
- "mrc p15, 0, %0, c1, c0, 0 \n\t"
|
|
|
|
- "tst %0, #(1 << 2) \n\t"
|
|
|
|
- "orreq %0, %0, #(1 << 2) \n\t"
|
|
|
|
- "mcreq p15, 0, %0, c1, c0, 0 \n\t"
|
|
|
|
|
|
+ "mrc p15, 0, r0, c1, c0, 0 \n\t"
|
|
|
|
+ "tst r0, #(1 << 2) \n\t"
|
|
|
|
+ "orreq r0, r0, #(1 << 2) \n\t"
|
|
|
|
+ "mcreq p15, 0, r0, c1, c0, 0 \n\t"
|
|
"isb "
|
|
"isb "
|
|
- : : "r" (0));
|
|
|
|
|
|
+ : : : "r0");
|
|
|
|
|
|
pr_warn("Failed to suspend the system\n");
|
|
pr_warn("Failed to suspend the system\n");
|
|
|
|
|