Browse Source

ARM: EXYNOS: Move scu_enable in the cpu_pm notifier

We make the cpuidle code less arch dependent.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Daniel Lezcano 11 years ago
parent
commit
795537daae
2 changed files with 6 additions and 7 deletions
  1. 0 6
      arch/arm/mach-exynos/cpuidle.c
  2. 6 1
      arch/arm/mach-exynos/pm.c

+ 0 - 6
arch/arm/mach-exynos/cpuidle.c

@@ -19,7 +19,6 @@
 #include <linux/platform_device.h>
 
 #include <asm/proc-fns.h>
-#include <asm/smp_scu.h>
 #include <asm/suspend.h>
 #include <asm/unified.h>
 #include <asm/cpuidle.h>
@@ -75,11 +74,6 @@ static int exynos_enter_core0_aftr(struct cpuidle_device *dev,
 
 	cpu_pm_enter();
 	cpu_suspend(0, idle_finisher);
-
-#ifdef CONFIG_SMP
-	if (!soc_is_exynos5250())
-		scu_enable(S5P_VA_SCU);
-#endif
 	cpu_pm_exit();
 
 	/*

+ 6 - 1
arch/arm/mach-exynos/pm.c

@@ -400,8 +400,13 @@ static int exynos_cpu_pm_notifier(struct notifier_block *self,
 		break;
 
 	case CPU_PM_EXIT:
-		if (cpu == 0)
+		if (cpu == 0) {
+#ifdef CONFIG_SMP
+			if (!soc_is_exynos5250())
+				scu_enable(S5P_VA_SCU);
+#endif
 			exynos_cpu_restore_register();
+		}
 		break;
 	}