HACK: handle big reset control
authorPark Bumgyu <bumgyu.park@samsung.com>
Mon, 26 Feb 2018 07:13:32 +0000 (16:13 +0900)
committerChungwoo Park <cww.park@samsung.com>
Mon, 21 May 2018 08:30:34 +0000 (17:30 +0900)
In prior chips, only big cluster supports CPD(Cluster Power Down),
therefore, big_reset_control() is called in cluster_enable/disable
function. It should be changed to consider cluster.

Change-Id: I75a50df68a44aceabb41b06fd9d66cb65aaf7de2
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
drivers/soc/samsung/exynos-cpupm.c

index c6d9195f73191c6909ec41729b7e51442b3170cc..eae11126dbf0081055ed51f6f89e9168a62e6747 100644 (file)
@@ -260,6 +260,12 @@ static void __init idle_ip_init(void)
 /******************************************************************************
  *                                CAL interfaces                              *
  ******************************************************************************/
+#ifdef CONFIG_EXYNOS_REBOOT
+extern void big_reset_control(int en);
+#else
+static inline void big_reset_control(int en) { }
+#endif
+
 static void cpu_enable(unsigned int cpu)
 {
        cal_cpu_enable(cpu);
@@ -273,10 +279,12 @@ static void cpu_disable(unsigned int cpu)
 static void cluster_enable(unsigned int cluster_id)
 {
        cal_cluster_enable(cluster_id);
+       big_reset_control(1);
 }
 
 static void cluster_disable(unsigned int cluster_id)
 {
+       big_reset_control(0);
        cal_cluster_disable(cluster_id);
 }