Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1343776

[PATCH v2 5/5] arm64: dts: register Hi6220's thermal zone for power allocator

From Leo Yan <leo.yan@linaro.org>
Newsgroups linux.kernel
Subject [PATCH v2 5/5] arm64: dts: register Hi6220's thermal zone for power allocator
Date 2016-02-26 04:50 +0100
Message-ID <r6hzI-5IV-15@gated-at.bofh.it> (permalink)
References <r6hzH-5IV-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


With profiling Hi6220's power modeling so get dynamic coefficient and
sustainable power. So pass these parameters from DT.

Now enable power allocator with only one actor for CPU part, so directly
use cluster0's thermal sensor for monitoring temperature.

Reviewed-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 33 +++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
index 50ba1b0..d8b963c 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
+++ b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
@@ -6,6 +6,7 @@
 
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/clock/hi6220-clock.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
 	compatible = "hisilicon,hi6220";
@@ -87,6 +88,7 @@
 			cooling-max-level = <0>;
 			#cooling-cells = <2>; /* min followed by max */
 			cpu-idle-states = <&CPU_SLEEP &CLUSTER_SLEEP>;
+			dynamic-power-coefficient = <311>;
 		};
 
 		cpu1: cpu@1 {
@@ -322,5 +324,36 @@
 			clock-names = "thermal_clk";
 			#thermal-sensor-cells = <1>;
 		};
+
+		thermal-zones {
+
+			cls0: cls0 {
+				polling-delay = <1000>;
+				polling-delay-passive = <100>;
+				sustainable-power = <3326>;
+
+				/* sensor ID */
+				thermal-sensors = <&tsensor 2>;
+
+				trips {
+					threshold: trip-point@0 {
+						temperature = <65000>;
+						type = "passive";
+					};
+
+					target: trip-point@1 {
+						temperature = <75000>;
+						type = "passive";
+					};
+				};
+
+				cooling-maps {
+					map0 {
+						trip = <&target>;
+						cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+					};
+				};
+			};
+		};
 	};
 };
-- 
1.9.1

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH v2 0/5] thermal: hisilicon: enable power allocator for Hi6220 Leo Yan <leo.yan@linaro.org> - 2016-02-26 04:50 +0100
  [PATCH v2 3/5] thermal: hisilicon: fix IRQ imbalance enabling Leo Yan <leo.yan@linaro.org> - 2016-02-26 04:50 +0100
  [PATCH v2 1/5] thermal: change "hysteresis" as optional property Leo Yan <leo.yan@linaro.org> - 2016-02-26 04:50 +0100
    Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Javi Merino <javi.merino@arm.com> - 2016-03-03 11:50 +0100
    Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Eduardo Valentin <edubezval@gmail.com> - 2016-03-03 17:30 +0100
      Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Leo Yan <leo.yan@linaro.org> - 2016-03-04 04:10 +0100
  [PATCH v2 5/5] arm64: dts: register Hi6220's thermal zone for power allocator Leo Yan <leo.yan@linaro.org> - 2016-02-26 04:50 +0100

csiph-web