Thread (19 messages) 19 messages, 4 authors, 2021-06-25

Re: Re: [PATCH] Fix mt7622.dtsi thermal cpu

From: Eric Woudstra <hidden>
Date: 2021-06-25 11:07:48
Also in: linux-arm-kernel, linux-devicetree, lkml

I choose "hot* with CPU, because it was the best temperature. But it should really be passive only with the cooling device CPU but with a much higher temperature. For me 87 degrees is fine and tested. But for mainline we would better ask Mediatek for the correct maximum temperature.

⁣Get BlueMail for Android ​

On Jun 25, 2021, 1:03 PM, at 1:03 PM, Frank Wunderlich [off-list ref] wrote:
quoted hunk ↗ jump to hunk
Hi
quoted
Gesendet: Freitag, 25. Juni 2021 um 11:57 Uhr
Von: "Daniel Lezcano" [off-list ref]
quoted
You should not add the fan in the mt7622.dtsi itself but in the board
specific file where there is a fan output on it. mt7622.dtsi is
supposed
quoted
to be the SoC itself AFAICT.

For instance:
https://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git/tree/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi#n39
quoted
https://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git/tree/arch/arm64/boot/dts/rockchip/rk3399-sapphire.dtsi#n164
quoted
quoted
@@ -170,14 +177,12 @@
 			cooling-maps {
 				map0 {
 					trip = <&cpu_passive>;
-					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
-							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+					cooling-device = <&fan0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
 				};
fan == active trip point

This is referring to the passive trip point. So it should point to
the
quoted
CPU as it is now. Note the order of mitigation is inverted regarding
the
quoted
proposal description.
but we need to disable the passive trip as cpu-trotteling starts
there...the higher temperature trips are currently not reached

summary

moving fan and cpu_thermal-override to bananapi-r64.dts

passive-trip: cooling-device = <&cpu0/1 0 0> as in erics Patch
active trip: cooling-device = <&fan0 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>;
the other 2 unchanged

but i suggest changing the temperature points in mt7622 dtsi as this is
SoC specific

so basicly:
--- a/arch/arm64/boot/dts/mediatek/mt7622.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt7622.dtsi
@@ -143,13 +143,13 @@ cpu_thermal: cpu-thermal {

                       trips {
                               cpu_passive: cpu-passive {
-                                       temperature = <47000>;
+                                       temperature = <70000>;
                                       hysteresis = <2000>;
                                       type = "passive";
                               };

                               cpu_active: cpu-active {
-                                       temperature = <67000>;
+                                       temperature = <80000>;
                                       hysteresis = <2000>;
                                       type = "active";
                               };
@@ -170,8 +170,8 @@ cpu-crit {
                       cooling-maps {
                               map0 {
                                       trip = <&cpu_passive>;
-                                       cooling-device = <&cpu0
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
-                                                        <&cpu1
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                                       cooling-device = <&cpu0 0 0>,
+                                                        <&cpu1 0 0>;
                               };

                               map1 {
@@ -428,6 +428,7 @@ uart3: serial@11005000 {
       pwm: pwm@11006000 {
               compatible = "mediatek,mt7622-pwm";
               reg = <0 0x11006000 0 0x1000>;
+               #pwm-cells = <3>;
               interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_LOW>;
               clocks = <&topckgen CLK_TOP_PWM_SEL>,
                        <&pericfg CLK_PERI_PWM_PD>,

--- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts
@@ -37,6 +37,13 @@ cpu@1 {
               };
       };

+       fan0: pwm-fan {
+               compatible = "pwm-fan";
+               #cooling-cells = <2>;
+               pwms = <&pwm 2 10000 0>;
+               cooling-levels = <0 102 170 230>;
+       };
+
       gpio-keys {
               compatible = "gpio-keys";
@@ -582,6 +589,29 @@ &u3phy {
       status = "okay";
};

+&cpu_thermal {
+       cooling-maps {
+               map1 {
+                       trip = <&cpu_active>;
+                       cooling-device = <&fan0 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>;
+               };
+       };
+};
+
&uart0 {
       pinctrl-names = "default";
       pinctrl-0 = <&uart0_pins>;

_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help