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


Groups > linux.kernel > #1336087 > unrolled thread

[RFC-help needed 0/3] ARM: dts: thermal: Fix Odroid XU3-Lite overheat

Started byKrzysztof Kozlowski <k.kozlowski@samsung.com>
First post2016-02-17 08:00 +0100
Last post2016-02-17 08:00 +0100
Articles 2 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [RFC-help needed 0/3] ARM: dts: thermal: Fix Odroid XU3-Lite overheat Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-02-17 08:00 +0100
    [RFC 2/3] ARM: dts: Add cooling levels for CPUs on exynos5422/5800 Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-02-17 08:00 +0100

#1336087 — [RFC-help needed 0/3] ARM: dts: thermal: Fix Odroid XU3-Lite overheat

FromKrzysztof Kozlowski <k.kozlowski@samsung.com>
Date2016-02-17 08:00 +0100
Subject[RFC-help needed 0/3] ARM: dts: thermal: Fix Odroid XU3-Lite overheat
Message-ID<r34fD-2FN-7@gated-at.bofh.it>
Hi,

I mentioned overheating problem of Odroid XU3-Lite after enabling
cpufreq-dt (when busy in a quite warm room). [0]

The patchset tries to fix this by adding CPU cooling device.
Unfortunately apparently I screwed something because on next-20160216
it does not help.

The fan works at full but CPU cooler is not enabled.

Patchset adds 2 additional trip points (so total 5). First 3 trip
points enable the fan. The new two trip points should trigger CPU
cooler.

However after reaching last fan trip point, the thermal zone stops
sending updates to the step-wise governor.
The last log for thermal_zone0 is:

[ 1366.604672] thermal thermal_zone0: last_temperature=71000, current_temperature=71000
[ 1366.604699] thermal thermal_zone0: Trip0[type=0,temp=50000]:trend=0,throttle=1
                                                     instance->upper:
                                                        instance->lower:
                                                           throttle:
[ 1366.604713] thermal cooling_device0: cur_state=0, 1, 0, throttle: 1
[ 1366.604725] thermal cooling_device0: CUR_state=0, 1, 0, throttle: 1
[ 1366.604735] thermal cooling_device0: old_target=1, target=1
[ 1366.604754] thermal thermal_zone0: Trip1[type=0,temp=60000]:trend=0,throttle=1
[ 1366.604776] thermal cooling_device0: cur_state=0, 2, 1, throttle: 1
[ 1366.604786] thermal cooling_device0: CUR_state=0, 2, 1, throttle: 1
[ 1366.604796] thermal cooling_device0: old_target=2, target=2
[ 1366.604810] thermal thermal_zone0: Trip2[type=0,temp=70000]:trend=0,throttle=1
[ 1366.604821] thermal cooling_device0: cur_state=0, 3, 2, throttle: 1
[ 1366.604832] thermal cooling_device0: CUR_state=0, 3, 2, throttle: 1
[ 1366.604841] thermal cooling_device0: old_target=3, target=3
[ 1366.604856] thermal thermal_zone0: Trip4[type=1,temp=90000]:trend=0,throttle=0
[ 1366.604869] thermal cooling_device1: cur_state=0, 3, 0, throttle: 0
[ 1366.604879] thermal cooling_device1: CUR_state=0, 3, 0, throttle: 0
[ 1366.604889] thermal cooling_device1: old_target=-1, target=-1
[ 1366.604901] thermal cooling_device2: cur_state=0, 3, 0, throttle: 0
[ 1366.604911] thermal cooling_device2: CUR_state=0, 3, 0, throttle: 0
[ 1366.604921] thermal cooling_device2: old_target=-1, target=-1
[ 1366.604935] thermal thermal_zone0: Trip5[type=1,temp=110000]:trend=0,throttle=0
[ 1366.604946] thermal cooling_device1: cur_state=0, 7, 7, throttle: 0
[ 1366.604957] thermal cooling_device1: CUR_state=0, 7, 7, throttle: 0
[ 1366.604967] thermal cooling_device1: old_target=-1, target=-1
[ 1366.604977] thermal cooling_device2: cur_state=0, 11, 11, throttle: 0
[ 1366.604988] thermal cooling_device2: CUR_state=0, 11, 11, throttle: 0
[ 1366.604997] thermal cooling_device2: old_target=-1, target=-1

After this, the temperature in zone0 rises but cooling devices do not
receive any pokes...

Did I make some mistake or this is thermal issue?


[0] http://www.spinics.net/lists/arm-kernel/msg482748.html


Best regards,
Krzysztof


Krzysztof Kozlowski (3):
  ARM: dts: Add cooling levels for CPUs on exynos5420
  ARM: dts: Add cooling levels for CPUs on exynos5422/5800
  ARM: dts: Don't overheat the Odroid XU3-Lite on high load

 arch/arm/boot/dts/exynos5420-cpus.dtsi        |  6 ++++
 arch/arm/boot/dts/exynos5422-cpu-thermal.dtsi | 41 +++++++++++++++++++++++++++
 arch/arm/boot/dts/exynos5422-cpus.dtsi        |  6 ++++
 3 files changed, 53 insertions(+)

-- 
2.5.0

[toc] | [next] | [standalone]


#1336088 — [RFC 2/3] ARM: dts: Add cooling levels for CPUs on exynos5422/5800

FromKrzysztof Kozlowski <k.kozlowski@samsung.com>
Date2016-02-17 08:00 +0100
Subject[RFC 2/3] ARM: dts: Add cooling levels for CPUs on exynos5422/5800
Message-ID<r34fE-2FN-15@gated-at.bofh.it>
In reply to#1336087
On Exynos5422 and Exynos5800 we support 12 cpufreq steps (200-1300 MHz) for LITTLE
and 18 steps for big core (200-1700 MHz). Add respective cooling cells.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
---
 arch/arm/boot/dts/exynos5422-cpus.dtsi | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/exynos5422-cpus.dtsi b/arch/arm/boot/dts/exynos5422-cpus.dtsi
index 9b46b9fbac4e..858bb7f57d76 100644
--- a/arch/arm/boot/dts/exynos5422-cpus.dtsi
+++ b/arch/arm/boot/dts/exynos5422-cpus.dtsi
@@ -32,6 +32,9 @@
 			clock-frequency = <1000000000>;
 			cci-control-port = <&cci_control0>;
 			operating-points-v2 = <&cluster_a7_opp_table>;
+			cooling-min-level = <0>;
+			cooling-max-level = <11>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 
 		cpu1: cpu@101 {
@@ -69,6 +72,9 @@
 			clock-frequency = <1800000000>;
 			cci-control-port = <&cci_control1>;
 			operating-points-v2 = <&cluster_a15_opp_table>;
+			cooling-min-level = <0>;
+			cooling-max-level = <15>;
+			#cooling-cells = <2>; /* min followed by max */
 		};
 
 		cpu5: cpu@1 {
-- 
2.5.0

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web