* [PATCH 0/4] add dts for Mediatek MT8183 thermal functions
@ 2019-08-14 10:06 Michael Kao
2019-08-14 10:06 ` [PATCH 1/4] arm64: dts: mt8183: add thermal zone node Michael Kao
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Michael Kao @ 2019-08-14 10:06 UTC (permalink / raw)
To: Zhang Rui, Eduardo Valentin, Daniel Lezcano, Rob Herring,
Mark Rutland, Matthias Brugger, hsinyi
Cc: devicetree, linux-mediatek, linux-kernel, linux-arm-kernel, linux-pm
Splitting the dtsi part from [1] and sending it again.
Add tzts1~5 and tztsABB from thermal sensor in SoC for
another get temperatrue. They don't need to thermal throttle.
And we bind coolers for thermal zone nodes of cpu_thermal.
Refernece:
[1] [v2,0/8] Add Mediatek thermal dirver and dtsi (https://patchwork.kernel.org/cover/10938809/)
Matthias Kaehlcke (1):
arm64: dts: mt8183: Configure CPU cooling
michael.kao (3):
arm64: dts: mt8183: add thermal zone node
arm64: dts: mt8183: add dynamic power coefficients
arm64: dts: mt8183: Add #cooling-cells to CPU nodes
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 139 +++++++++++++++++++++++++++++++
1 file changed, 139 insertions(+)
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/4] arm64: dts: mt8183: add thermal zone node
2019-08-14 10:06 [PATCH 0/4] add dts for Mediatek MT8183 thermal functions Michael Kao
@ 2019-08-14 10:06 ` Michael Kao
2019-08-14 10:06 ` [PATCH 2/4] arm64: dts: mt8183: add dynamic power coefficients Michael Kao
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Michael Kao @ 2019-08-14 10:06 UTC (permalink / raw)
To: Zhang Rui, Eduardo Valentin, Daniel Lezcano, Rob Herring,
Mark Rutland, Matthias Brugger, hsinyi
Cc: devicetree, linux-pm, linux-kernel, michael.kao, linux-mediatek,
linux-arm-kernel
From: "michael.kao" <michael.kao@mediatek.com>
Add thermal zone node to Mediatek MT8183 dts file.
Signed-off-by: Michael Kao <michael.kao@mediatek.com>
---
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 67 ++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
index c2749c4..47bde49 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
@@ -372,6 +372,70 @@
status = "disabled";
};
+ thermal: thermal@1100b000 {
+ #thermal-sensor-cells = <1>;
+ compatible = "mediatek,mt8183-thermal";
+ reg = <0 0x1100b000 0 0x1000>;
+ interrupts = <0 76 IRQ_TYPE_LEVEL_LOW>;
+ clocks = <&infracfg CLK_INFRA_THERM>,
+ <&infracfg CLK_INFRA_AUXADC>;
+ clock-names = "therm", "auxadc";
+ resets = <&infracfg MT8183_INFRACFG_AO_THERM_SW_RST>;
+ mediatek,auxadc = <&auxadc>;
+ mediatek,apmixedsys = <&apmixedsys>;
+ mediatek,hw-reset-temp = <117000>;
+ nvmem-cells = <&thermal_calibration>;
+ nvmem-cell-names = "calibration-data";
+ };
+
+ thermal-zones {
+ cpu_thermal: cpu_thermal {
+ polling-delay-passive = <100>;
+ polling-delay = <500>;
+ thermal-sensors = <&thermal 0>;
+ sustainable-power = <4500>;
+ };
+
+ /* The tzts1 ~ tzts6 don't need to polling */
+ /* The tzts1 ~ tzts6 don't need to thermal throttle */
+
+ tzts1: tzts1 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 1>;
+ };
+
+ tzts2: tzts2 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 2>;
+ };
+
+ tzts3: tzts3 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 3>;
+ };
+
+ tzts4: tzts4 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 4>;
+ };
+
+ tzts5: tzts5 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 5>;
+ };
+
+ tztsABB: tztsABB {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&thermal 6>;
+ };
+ };
+
audiosys: syscon@11220000 {
compatible = "mediatek,mt8183-audiosys", "syscon";
reg = <0 0x11220000 0 0x1000>;
@@ -382,6 +446,9 @@
compatible = "mediatek,mt8183-efuse",
"mediatek,efuse";
reg = <0 0x11f10000 0 0x1000>;
+ thermal_calibration: calib@180 {
+ reg = <0x180 0xc>;
+ };
};
mfgcfg: syscon@13000000 {
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/4] arm64: dts: mt8183: add dynamic power coefficients
2019-08-14 10:06 [PATCH 0/4] add dts for Mediatek MT8183 thermal functions Michael Kao
2019-08-14 10:06 ` [PATCH 1/4] arm64: dts: mt8183: add thermal zone node Michael Kao
@ 2019-08-14 10:06 ` Michael Kao
2019-08-14 10:06 ` [PATCH 3/4] arm64: dts: mt8183: Add #cooling-cells to CPU nodes Michael Kao
2019-08-14 10:06 ` [PATCH 4/4] arm64: dts: mt8183: Configure CPU cooling Michael Kao
3 siblings, 0 replies; 5+ messages in thread
From: Michael Kao @ 2019-08-14 10:06 UTC (permalink / raw)
To: Zhang Rui, Eduardo Valentin, Daniel Lezcano, Rob Herring,
Mark Rutland, Matthias Brugger, hsinyi
Cc: devicetree, linux-pm, linux-kernel, michael.kao, linux-mediatek,
linux-arm-kernel
From: "michael.kao" <michael.kao@mediatek.com>
Add dynamic power coefficients for all cores.
Signed-off-by: michael.kao <michael.kao@mediatek.com>
---
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
index 47bde49..9de706a 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
@@ -58,6 +58,7 @@
reg = <0x000>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
+ dynamic-power-coefficient = <84>;
};
cpu1: cpu@1 {
@@ -66,6 +67,7 @@
reg = <0x001>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
+ dynamic-power-coefficient = <84>;
};
cpu2: cpu@2 {
@@ -74,6 +76,7 @@
reg = <0x002>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
+ dynamic-power-coefficient = <84>;
};
cpu3: cpu@3 {
@@ -82,6 +85,7 @@
reg = <0x003>;
enable-method = "psci";
capacity-dmips-mhz = <741>;
+ dynamic-power-coefficient = <84>;
};
cpu4: cpu@100 {
@@ -90,6 +94,7 @@
reg = <0x100>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <211>;
};
cpu5: cpu@101 {
@@ -98,6 +103,7 @@
reg = <0x101>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <211>;
};
cpu6: cpu@102 {
@@ -106,6 +112,7 @@
reg = <0x102>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <211>;
};
cpu7: cpu@103 {
@@ -114,6 +121,7 @@
reg = <0x103>;
enable-method = "psci";
capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <211>;
};
};
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 3/4] arm64: dts: mt8183: Add #cooling-cells to CPU nodes
2019-08-14 10:06 [PATCH 0/4] add dts for Mediatek MT8183 thermal functions Michael Kao
2019-08-14 10:06 ` [PATCH 1/4] arm64: dts: mt8183: add thermal zone node Michael Kao
2019-08-14 10:06 ` [PATCH 2/4] arm64: dts: mt8183: add dynamic power coefficients Michael Kao
@ 2019-08-14 10:06 ` Michael Kao
2019-08-14 10:06 ` [PATCH 4/4] arm64: dts: mt8183: Configure CPU cooling Michael Kao
3 siblings, 0 replies; 5+ messages in thread
From: Michael Kao @ 2019-08-14 10:06 UTC (permalink / raw)
To: Zhang Rui, Eduardo Valentin, Daniel Lezcano, Rob Herring,
Mark Rutland, Matthias Brugger, hsinyi
Cc: devicetree, linux-pm, linux-kernel, michael.kao, linux-mediatek,
linux-arm-kernel
From: "michael.kao" <michael.kao@mediatek.com>
The #cooling-cells property needs to be specified to allow a CPU
to be used as cooling device.
Signed-off-by: michael.kao <michael.kao@mediatek.com>
---
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
index 9de706a..bc42b82 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
@@ -9,6 +9,7 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include "mt8183-pinfunc.h"
+#include <dt-bindings/thermal/thermal.h>
/ {
compatible = "mediatek,mt8183";
@@ -59,6 +60,7 @@
enable-method = "psci";
capacity-dmips-mhz = <741>;
dynamic-power-coefficient = <84>;
+ #cooling-cells = <2>;
};
cpu1: cpu@1 {
@@ -68,6 +70,7 @@
enable-method = "psci";
capacity-dmips-mhz = <741>;
dynamic-power-coefficient = <84>;
+ #cooling-cells = <2>;
};
cpu2: cpu@2 {
@@ -77,6 +80,7 @@
enable-method = "psci";
capacity-dmips-mhz = <741>;
dynamic-power-coefficient = <84>;
+ #cooling-cells = <2>;
};
cpu3: cpu@3 {
@@ -86,6 +90,7 @@
enable-method = "psci";
capacity-dmips-mhz = <741>;
dynamic-power-coefficient = <84>;
+ #cooling-cells = <2>;
};
cpu4: cpu@100 {
@@ -95,6 +100,7 @@
enable-method = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <211>;
+ #cooling-cells = <2>;
};
cpu5: cpu@101 {
@@ -104,6 +110,7 @@
enable-method = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <211>;
+ #cooling-cells = <2>;
};
cpu6: cpu@102 {
@@ -113,6 +120,7 @@
enable-method = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <211>;
+ #cooling-cells = <2>;
};
cpu7: cpu@103 {
@@ -122,6 +130,7 @@
enable-method = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <211>;
+ #cooling-cells = <2>;
};
};
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 4/4] arm64: dts: mt8183: Configure CPU cooling
2019-08-14 10:06 [PATCH 0/4] add dts for Mediatek MT8183 thermal functions Michael Kao
` (2 preceding siblings ...)
2019-08-14 10:06 ` [PATCH 3/4] arm64: dts: mt8183: Add #cooling-cells to CPU nodes Michael Kao
@ 2019-08-14 10:06 ` Michael Kao
3 siblings, 0 replies; 5+ messages in thread
From: Michael Kao @ 2019-08-14 10:06 UTC (permalink / raw)
To: Zhang Rui, Eduardo Valentin, Daniel Lezcano, Rob Herring,
Mark Rutland, Matthias Brugger, hsinyi
Cc: devicetree, linux-pm, linux-kernel, Michael Kao,
Matthias Kaehlcke, linux-mediatek, linux-arm-kernel
From: Matthias Kaehlcke <mka@chromium.org>
Add SoC temperature threshold at 68°C and target at 80°C.
Add trip points and cooling maps for big and litter clusters.
Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Michael Kao <michael.kao@mediatek.com>
---
arch/arm64/boot/dts/mediatek/mt8183.dtsi | 55 ++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/arch/arm64/boot/dts/mediatek/mt8183.dtsi b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
index bc42b82..6611d29 100644
--- a/arch/arm64/boot/dts/mediatek/mt8183.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8183.dtsi
@@ -411,6 +411,61 @@
polling-delay = <500>;
thermal-sensors = <&thermal 0>;
sustainable-power = <4500>;
+
+ trips {
+ threshold: trip-point@0 {
+ temperature = <68000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+
+ target: trip-point@1 {
+ temperature = <80000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+
+ cpu_crit: cpu-crit {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ map0 {
+ trip = <&target>;
+ cooling-device = <&cpu0
+ THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>,
+ <&cpu1
+ THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>,
+ <&cpu2
+ THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>,
+ <&cpu3
+ THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>;
+ contribution = <3072>;
+ };
+ map1 {
+ trip = <&target>;
+ cooling-device = <&cpu4
+ THERMAL_NO_LIMIT
+ 14>,
+ <&cpu5
+ THERMAL_NO_LIMIT
+ 14>,
+ <&cpu6
+ THERMAL_NO_LIMIT
+ 14>,
+ <&cpu7
+ THERMAL_NO_LIMIT
+ 14>;
+ contribution = <1024>;
+ };
+ };
};
/* The tzts1 ~ tzts6 don't need to polling */
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-08-14 10:08 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-14 10:06 [PATCH 0/4] add dts for Mediatek MT8183 thermal functions Michael Kao
2019-08-14 10:06 ` [PATCH 1/4] arm64: dts: mt8183: add thermal zone node Michael Kao
2019-08-14 10:06 ` [PATCH 2/4] arm64: dts: mt8183: add dynamic power coefficients Michael Kao
2019-08-14 10:06 ` [PATCH 3/4] arm64: dts: mt8183: Add #cooling-cells to CPU nodes Michael Kao
2019-08-14 10:06 ` [PATCH 4/4] arm64: dts: mt8183: Configure CPU cooling Michael Kao
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).