linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Viresh Kumar <viresh.kumar@linaro.org>
To: arm@kernel.org, Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Kukjin Kim <kgene@kernel.org>,
	Krzysztof Kozlowski <krzk@kernel.org>
Cc: Viresh Kumar <viresh.kumar@linaro.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	ionela.voinescu@arm.com,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	chris.redpath@arm.com, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 07/15] arm: dts: exynos: Add missing cooling device properties for CPUs
Date: Fri, 25 May 2018 16:01:53 +0530	[thread overview]
Message-ID: <cfd8de4b2ad1cfd7b0f1a0706c0b6b918e1ebffc.1527244201.git.viresh.kumar@linaro.org> (raw)
In-Reply-To: <cover.1527244200.git.viresh.kumar@linaro.org>
In-Reply-To: <cover.1527244200.git.viresh.kumar@linaro.org>

The cooling device properties, like "#cooling-cells" and
"dynamic-power-coefficient", 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 register a cooling device.

Add such missing properties.

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

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 arch/arm/boot/dts/exynos3250.dtsi | 16 ++++++++++++++++
 arch/arm/boot/dts/exynos4210.dtsi | 13 +++++++++++++
 arch/arm/boot/dts/exynos4412.dtsi |  9 +++++++++
 arch/arm/boot/dts/exynos5250.dtsi | 23 +++++++++++++++++++++++
 4 files changed, 61 insertions(+)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index 962af97c1883..aff5d66ae058 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -78,6 +78,22 @@
 			compatible = "arm,cortex-a7";
 			reg = <1>;
 			clock-frequency = <1000000000>;
+			clocks = <&cmu CLK_ARM_CLK>;
+			clock-names = "cpu";
+			#cooling-cells = <2>;
+
+			operating-points = <
+				1000000 1150000
+				900000  1112500
+				800000  1075000
+				700000  1037500
+				600000  1000000
+				500000  962500
+				400000  925000
+				300000  887500
+				200000  850000
+				100000  850000
+			>;
 		};
 	};
 
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi
index 88fb47cef9a8..b6091c27f155 100644
--- a/arch/arm/boot/dts/exynos4210.dtsi
+++ b/arch/arm/boot/dts/exynos4210.dtsi
@@ -55,6 +55,19 @@
 			device_type = "cpu";
 			compatible = "arm,cortex-a9";
 			reg = <0x901>;
+			clocks = <&clock CLK_ARM_CLK>;
+			clock-names = "cpu";
+			clock-latency = <160000>;
+
+			operating-points = <
+				1200000 1250000
+				1000000 1150000
+				800000	1075000
+				500000	975000
+				400000	975000
+				200000	950000
+			>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 	};
 
diff --git a/arch/arm/boot/dts/exynos4412.dtsi b/arch/arm/boot/dts/exynos4412.dtsi
index 7b43c10c510b..51f72f0327e5 100644
--- a/arch/arm/boot/dts/exynos4412.dtsi
+++ b/arch/arm/boot/dts/exynos4412.dtsi
@@ -49,21 +49,30 @@
 			device_type = "cpu";
 			compatible = "arm,cortex-a9";
 			reg = <0xA01>;
+			clocks = <&clock CLK_ARM_CLK>;
+			clock-names = "cpu";
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 
 		cpu@a02 {
 			device_type = "cpu";
 			compatible = "arm,cortex-a9";
 			reg = <0xA02>;
+			clocks = <&clock CLK_ARM_CLK>;
+			clock-names = "cpu";
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 
 		cpu@a03 {
 			device_type = "cpu";
 			compatible = "arm,cortex-a9";
 			reg = <0xA03>;
+			clocks = <&clock CLK_ARM_CLK>;
+			clock-names = "cpu";
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 	};
 
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 2daf505b3d08..69648f83b8b4 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -84,6 +84,29 @@
 			compatible = "arm,cortex-a15";
 			reg = <1>;
 			clock-frequency = <1700000000>;
+			clocks = <&clock CLK_ARM_CLK>;
+			clock-names = "cpu";
+			clock-latency = <140000>;
+
+			operating-points = <
+				1700000 1300000
+				1600000 1250000
+				1500000 1225000
+				1400000 1200000
+				1300000 1150000
+				1200000 1125000
+				1100000 1100000
+				1000000 1075000
+				 900000 1050000
+				 800000 1025000
+				 700000 1012500
+				 600000 1000000
+				 500000  975000
+				 400000  950000
+				 300000  937500
+				 200000  925000
+			>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 	};
 
-- 
2.15.0.194.g9af6a3dea062

  parent reply	other threads:[~2018-05-25 10:35 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-25 10:31 [PATCH 00/15] arm: dts: Fix OPP and cooling device properties Viresh Kumar
2018-05-25 10:31 ` [PATCH 01/15] arm: dts: armada: Fix "#cooling-cells" property's name Viresh Kumar
2018-05-28 14:53   ` Gregory CLEMENT
2018-05-25 10:31 ` [PATCH 02/15] arm: dts: ls1021a: Add missing cooling device properties for CPUs Viresh Kumar
2018-07-03  1:35   ` Shawn Guo
2018-05-25 10:31 ` [PATCH 03/15] arm: dts: mediatek: " Viresh Kumar
2018-06-25 14:58   ` Matthias Brugger
2018-05-25 10:31 ` [PATCH 04/15] arm: dts: rk322x: " Viresh Kumar
2018-06-17 14:47   ` Heiko Stuebner
2018-05-25 10:31 ` [PATCH 05/15] arm: dts: uniphier: " Viresh Kumar
2018-06-01  3:25   ` Masahiro Yamada
2018-05-25 10:31 ` [PATCH 06/15] arm: dts: sun: " Viresh Kumar
2018-05-28  8:44   ` Maxime Ripard
2018-05-28 10:57     ` Viresh Kumar
2018-06-01 15:17       ` Maxime Ripard
2018-06-05  4:47         ` [PATCH V2 1/2] arm: dts: sun8i-h3: " Viresh Kumar
2018-06-05  4:47           ` [PATCH V2 2/2] arm: dts: sunxi: " Viresh Kumar
2018-06-05  7:11             ` Maxime Ripard
2018-06-05 16:02               ` Chen-Yu Tsai
2018-06-06  6:58                 ` Maxime Ripard
2018-05-25 10:31 ` Viresh Kumar [this message]
2018-05-29 13:18   ` [PATCH 07/15] arm: dts: exynos: " Krzysztof Kozlowski
2018-05-30  4:38     ` Viresh Kumar
2018-05-30 12:32       ` Krzysztof Kozlowski
2018-05-31  5:22         ` Viresh Kumar
2018-06-20 18:44   ` Krzysztof Kozlowski
2018-05-25 10:31 ` [PATCH 08/15] arm: dts: dra74x: " Viresh Kumar
2018-07-03  6:43   ` Tony Lindgren
2018-05-25 10:31 ` [PATCH 09/15] arm: dts: omap: " Viresh Kumar
2018-07-03  6:44   ` Tony Lindgren
2018-05-25 10:31 ` [PATCH 10/15] arm: dts: rk3288: " Viresh Kumar
2018-06-17 14:47   ` Heiko Stuebner
2018-05-25 10:31 ` [PATCH 11/15] arm: dts: berlin: Add missing OPP " Viresh Kumar
2018-05-25 10:31 ` [PATCH 12/15] arm: dts: highbank: " Viresh Kumar
2018-07-02 20:25   ` Rob Herring
2018-07-02 23:27     ` Olof Johansson
2018-07-03  4:13       ` Viresh Kumar
2018-07-03 14:46         ` Olof Johansson
2018-05-25 10:31 ` [PATCH 13/15] arm: dts: r8a7743: " Viresh Kumar
2018-05-28  9:23   ` Simon Horman
2018-05-28 10:58     ` Viresh Kumar
2018-05-28 11:58       ` Simon Horman
2018-05-29 13:33         ` Biju Das
2018-05-30  4:47           ` Viresh Kumar
2018-05-30  4:46   ` [PATCH V2 13/15] arm: dts: r8a77xx: " Viresh Kumar
2018-05-31 14:24     ` Simon Horman
2018-06-04  9:57     ` Simon Horman
2018-06-11  9:26     ` Geert Uytterhoeven
2018-05-25 10:32 ` [PATCH 14/15] arm: dts: qcom: " Viresh Kumar
2018-07-18  6:08   ` Viresh Kumar
2018-07-18 10:22   ` Amit Kucheria
2018-07-21 18:56     ` Andy Gross
2018-05-25 10:32 ` [PATCH 15/15] arm: dts: imx: " Viresh Kumar
2018-05-25 11:46   ` Lucas Stach
2018-05-28 11:07     ` Viresh Kumar
2018-07-03  7:12       ` Shawn Guo
2018-07-03  8:56         ` Lucas Stach
2018-07-03 12:34   ` Shawn Guo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cfd8de4b2ad1cfd7b0f1a0706c0b6b918e1ebffc.1527244201.git.viresh.kumar@linaro.org \
    --to=viresh.kumar@linaro.org \
    --cc=arm@kernel.org \
    --cc=chris.redpath@arm.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=ionela.voinescu@arm.com \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=vincent.guittot@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).