Skip to contentSkip to conversation

arm64: dts: exynos: fix type of thermal trip points for Exynos7

PATCH In review Bartlomiej Zolnierkiewicz 2 participants 3 messages May 15, 2018 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): CGME20180515123755eucas1p278a9c1e9cb0101e406e3839e27f8b3b1@eucas1p2.samsung.com

#1 lore raw

PATCH 1/1 arm64: dts: exynos: fix type of thermal trip points for Exynos7

Currently Exynos thermal driver treats as "active" all specified trip points before reaching maximum number of hardware supported trip points. Moreover polling-delay-passive is specified as "0" in exynos7.dtsi (IOW passive polling is disabled). Therefore fix type of cpu-alert-0 to cpu-alert6 trip points to be "active" instead of "passive" (cpu-alert-7 type is "critical" so it doesn't need a fixup).

---
 arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi |   14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi +7 -7
Index: b/arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi
===================================================================
@@ -10,37 +10,37 @@ trips {
 	cpu-alert-0 {
 		temperature = <75000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-1 {
 		temperature = <80000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-2 {
 		temperature = <85000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-3 {
 		temperature = <90000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-4 {
 		temperature = <95000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-5 {
 		temperature = <100000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-alert-6 {
 		temperature = <110000>; /* millicelsius */
 		hysteresis = <10000>; /* millicelsius */
-		type = "passive";
+		type = "active";
 	};
 	cpu-crit-0 {
 		temperature = <115000>; /* millicelsius */
#2 lore raw
Quoted 3 lines · Bartlomiej Zolnierkiewicz

Currently Exynos thermal driver treats as "active" all specified trip points before reaching maximum number of hardware supported trip points.

The trip point type describe the way how system should act - use active or passive cooling. It is independent of thermal driver. I do not understand what is exactly wrong... maybe except whether the trip point is active/passive looks like property of board, not SoC itself, but your patch does not address it.

Quoted 2 lines

Moreover polling-delay-passive is specified as "0" in exynos7.dtsi (IOW passive polling is disabled).

Which is perfectly fine. TMU driver for Exynos7 supports up to eight trip points in interrupt mode so having polling mode = 0 is good. IOW passive polling is disabled just like active polling is disabled so what did you want to say here?

Best regards,
Krzysztof

Quoted 61 lines

Therefore fix
type of cpu-alert-0 to cpu-alert6 trip points to be "active" instead of "passive" (cpu-alert-7 type is "critical" so it doesn't need a fixup).

---
 arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi |   14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

Index: b/arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi
===================================================================

arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi 2018-05-15 14:23:12.594016481 +0200 renamed from arch/arm64/boot/dts/exynos/exynos7-trip-points.dtsi 2018-05-15 13:57:55.822172496 +0200 +7 -7
@@ -10,37 +10,37 @@ trips {
        cpu-alert-0 {
                temperature = <75000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-1 {
                temperature = <80000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-2 {
                temperature = <85000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-3 {
                temperature = <90000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-4 {
                temperature = <95000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-5 {
                temperature = <100000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-alert-6 {
                temperature = <110000>; /* millicelsius */
                hysteresis = <10000>; /* millicelsius */
-               type = "passive";
+               type = "active";
        };
        cpu-crit-0 {
                temperature = <115000>; /* millicelsius */
#3 lore raw
Quoted 8 lines · Krzysztof Kozlowski
Quoted 3 lines · Bartlomiej Zolnierkiewicz

Currently Exynos thermal driver treats as "active" all specified trip points before reaching maximum number of hardware supported trip points.

The trip point type describe the way how system should act - use active or passive cooling. It is independent of thermal driver. I do

OK, I see it now. Please disregard this patch.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics