ARM: dts: berlin: Add missing OPP properties for CPUs
authorViresh Kumar <viresh.kumar@linaro.org>
Fri, 20 Jul 2018 10:11:50 +0000 (18:11 +0800)
committerOlof Johansson <olof@lixom.net>
Sat, 21 Jul 2018 21:29:11 +0000 (14:29 -0700)
The OPP properties, like "operating-points", should either be present
for all the CPUs of a cluster or none. If these are present only for a
subset of CPUs of a cluster then things will start falling apart as soon
as the CPUs are brought online in a different order. For example, this
will happen because the operating system looks for such properties in
the CPU node it is trying to bring up, so that it can create an OPP
table.

Add such missing properties.

Fix other missing properties (clocks, clock latency) as well to
make it all work.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
arch/arm/boot/dts/berlin2.dtsi
arch/arm/boot/dts/berlin2q.dtsi

index db67377af2664670322da8ca2e54c2c8de341eb7..d2f7d984bba5cf94692ab338addce40ea2201e04 100644 (file)
                        device_type = "cpu";
                        next-level-cache = <&l2>;
                        reg = <1>;
+
+                       clocks = <&chip_clk CLKID_CPU>;
+                       clock-latency = <100000>;
+                       operating-points = <
+                               /* kHz    uV */
+                               1200000 1200000
+                               1000000 1200000
+                               800000  1200000
+                               600000  1200000
+                       >;
                };
        };
 
index 516a7ce257915d637f47ea26883ec69e90b406d2..99d6872a6dfcca9f9abd21ca21fbfa0f11ae6d52 100644 (file)
                        device_type = "cpu";
                        next-level-cache = <&l2>;
                        reg = <1>;
+
+                       clocks = <&chip_clk CLKID_CPU>;
+                       clock-latency = <100000>;
+                       /* Can be modified by the bootloader */
+                       operating-points = <
+                               /* kHz    uV */
+                               1200000 1200000
+                               1000000 1200000
+                               800000  1200000
+                               600000  1200000
+                       >;
                };
 
                cpu2: cpu@2 {
                        device_type = "cpu";
                        next-level-cache = <&l2>;
                        reg = <2>;
+
+                       clocks = <&chip_clk CLKID_CPU>;
+                       clock-latency = <100000>;
+                       /* Can be modified by the bootloader */
+                       operating-points = <
+                               /* kHz    uV */
+                               1200000 1200000
+                               1000000 1200000
+                               800000  1200000
+                               600000  1200000
+                       >;
                };
 
                cpu3: cpu@3 {
                        device_type = "cpu";
                        next-level-cache = <&l2>;
                        reg = <3>;
+
+                       clocks = <&chip_clk CLKID_CPU>;
+                       clock-latency = <100000>;
+                       /* Can be modified by the bootloader */
+                       operating-points = <
+                               /* kHz    uV */
+                               1200000 1200000
+                               1000000 1200000
+                               800000  1200000
+                               600000  1200000
+                       >;
                };
        };