aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/boot/dts/exynos5250.dtsi16
-rw-r--r--arch/arm/mach-exynos/platsmp.c10
2 files changed, 23 insertions, 3 deletions
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 1e215fed037b..d04ab0ad791a 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -52,6 +52,22 @@
52 pinctrl3 = &pinctrl_3; 52 pinctrl3 = &pinctrl_3;
53 }; 53 };
54 54
55 cpus {
56 #address-cells = <1>;
57 #size-cells = <0>;
58
59 cpu@0 {
60 device_type = "cpu";
61 compatible = "arm,cortex-a15";
62 reg = <0>;
63 };
64 cpu@1 {
65 device_type = "cpu";
66 compatible = "arm,cortex-a15";
67 reg = <1>;
68 };
69 };
70
55 pd_gsc: gsc-power-domain@0x10044000 { 71 pd_gsc: gsc-power-domain@0x10044000 {
56 compatible = "samsung,exynos4210-pd"; 72 compatible = "samsung,exynos4210-pd";
57 reg = <0x10044000 0x20>; 73 reg = <0x10044000 0x20>;
diff --git a/arch/arm/mach-exynos/platsmp.c b/arch/arm/mach-exynos/platsmp.c
index a0e8ff7758a4..ab1d2d5f3709 100644
--- a/arch/arm/mach-exynos/platsmp.c
+++ b/arch/arm/mach-exynos/platsmp.c
@@ -180,10 +180,14 @@ static void __init exynos_smp_init_cpus(void)
180 void __iomem *scu_base = scu_base_addr(); 180 void __iomem *scu_base = scu_base_addr();
181 unsigned int i, ncores; 181 unsigned int i, ncores;
182 182
183 if (soc_is_exynos5250()) 183 if (read_cpuid_part_number() == ARM_CPU_PART_CORTEX_A9)
184 ncores = 2;
185 else
186 ncores = scu_base ? scu_get_core_count(scu_base) : 1; 184 ncores = scu_base ? scu_get_core_count(scu_base) : 1;
185 else
186 /*
187 * CPU Nodes are passed thru DT and set_cpu_possible
188 * is set by "arm_dt_init_cpu_maps".
189 */
190 return;
187 191
188 /* sanity check */ 192 /* sanity check */
189 if (ncores > nr_cpu_ids) { 193 if (ncores > nr_cpu_ids) {