[RAMEN9610-10884][COMMON] soc: cpupm: Do not allow idle util system initialization
authorHyunju Kang <hjtop.kang@gmail.com>
Tue, 15 Jan 2019 02:21:28 +0000 (11:21 +0900)
committerCosmin Tanislav <demonsingur@gmail.com>
Mon, 22 Apr 2024 17:23:12 +0000 (20:23 +0300)
Change-Id: Iccd6b703d564470f199375a2cfa75597973775b3
Signed-off-by: Hyunju Kang <hjtop.kang@gmail.com>
drivers/soc/samsung/exynos-cpupm.c

index b008b69ecb16d1ae8c729ebe9ae077dfc8158442..87ac5d7e9fa4cee9d8cb139a298706d08d6bef98 100644 (file)
@@ -561,10 +561,15 @@ static int cpus_busy(int target_residency, const struct cpumask *cpus)
        return 0;
 }
 
+static int initcall_done;
 static int system_busy(void)
 {
        int i;
 
+       /* do not allow system idle util initialization time */
+       if (!initcall_done)
+               return 1;
+
        for (i = 0; i < NUM_IDLE_IP_REG; i++)
                if (check_idle_ip(i))
                        return 1;
@@ -905,6 +910,14 @@ static int __init exynos_cpupm_init(void)
        return 0;
 }
 arch_initcall(exynos_cpupm_init);
+
+static int __init exynos_cpupm_late_init(void)
+{
+       initcall_done = true;
+
+       return 0;
+}
+late_initcall(exynos_cpupm_late_init);
 #endif
 
 static int cpuhp_cpupm_enable_idle(unsigned int cpu)