ARM: dts: berlin: Add missing OPP properties for CPUs
PATCH 1/1 ARM: dts: berlin: Add missing OPP properties for CPUs
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.
---
Hi Olof, Arnd,
This is a single patch from berlin-dt for 4.19, so I send it directly to you, could you please kindly merge it?
Thanks
arch/arm/boot/dts/berlin2.dtsi | 10 ++++++++++ arch/arm/boot/dts/berlin2q.dtsi | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+)
arch/arm/boot/dts/berlin2.dtsi +10 -0
@@ -50,6 +50,16 @@ 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 + >; }; };
arch/arm/boot/dts/berlin2q.dtsi +33 -0
@@ -45,6 +45,17 @@ 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 at 2 {
@@ -52,6 +63,17 @@ 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 at 3 {
@@ -59,6 +81,17 @@ 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 + >; }; };
Signature · 1 line
2.18.0
PATCH v2 1/1 ARM: dts: berlin: Add missing OPP properties for CPUs
From: Viresh Kumar <[email protected]>
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.
---
Since v1:
- fix author, it's from Viresh. Sorry for making this mistake
arch/arm/boot/dts/berlin2.dtsi | 10 ++++++++++ arch/arm/boot/dts/berlin2q.dtsi | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+)
arch/arm/boot/dts/berlin2.dtsi +10 -0
@@ -50,6 +50,16 @@ 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 + >; }; };
arch/arm/boot/dts/berlin2q.dtsi +33 -0
@@ -45,6 +45,17 @@ 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 at 2 {
@@ -52,6 +63,17 @@ 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 at 3 {
@@ -59,6 +81,17 @@ 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 + >; }; };
Signature · 1 line
2.18.0
Olof Johansson
AppliedPATCH v2 1/1 ARM: dts: berlin: Add missing OPP properties for CPUs
Quoted 12 lines · Jisheng Zhang
From: Viresh Kumar <[email protected]>
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.
Quoted 8 lines
Fix other missing properties (clocks, clock latency) as well to make it all work.
Signed-off-by Viresh Kumar <[email protected]>Signed-off-by Jisheng Zhang <[email protected]>---
Since v1:
- fix author, it's from Viresh. Sorry for making this mistake
Applied, thanks.
-Olof