Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[GitHub/moto-9609/android_kernel_motorola_exynos9610.git] / arch / arm / mach-exynos / exynos.c
index 3e45bcb4f003380861b962bc3dbfa59ec624436d..bcde0dd668df950f1918a66179715a56ec9578fa 100644 (file)
@@ -166,16 +166,14 @@ static void __init exynos_init_io(void)
        exynos_map_io();
 }
 
+/*
+ * Apparently, these SoCs are not able to wake-up from suspend using
+ * the PMU. Too bad. Should they suddenly become capable of such a
+ * feat, the matches below should be moved to suspend.c.
+ */
 static const struct of_device_id exynos_dt_pmu_match[] = {
-       { .compatible = "samsung,exynos3250-pmu" },
-       { .compatible = "samsung,exynos4210-pmu" },
-       { .compatible = "samsung,exynos4212-pmu" },
-       { .compatible = "samsung,exynos4412-pmu" },
-       { .compatible = "samsung,exynos4415-pmu" },
-       { .compatible = "samsung,exynos5250-pmu" },
        { .compatible = "samsung,exynos5260-pmu" },
        { .compatible = "samsung,exynos5410-pmu" },
-       { .compatible = "samsung,exynos5420-pmu" },
        { /*sentinel*/ },
 };
 
@@ -186,9 +184,6 @@ static void exynos_map_pmu(void)
        np = of_find_matching_node(NULL, exynos_dt_pmu_match);
        if (np)
                pmu_base_addr = of_iomap(np, 0);
-
-       if (!pmu_base_addr)
-               panic("failed to find exynos pmu register\n");
 }
 
 static void __init exynos_init_irq(void)
@@ -211,7 +206,7 @@ static void __init exynos_dt_machine_init(void)
        if (!IS_ENABLED(CONFIG_SMP))
                exynos_sysram_init();
 
-#ifdef CONFIG_ARM_EXYNOS_CPUIDLE
+#if defined(CONFIG_SMP) && defined(CONFIG_ARM_EXYNOS_CPUIDLE)
        if (of_machine_is_compatible("samsung,exynos4210"))
                exynos_cpuidle.dev.platform_data = &cpuidle_coupled_exynos_data;
 #endif