mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
@ 2025-09-30  2:16 Mikhail Kshevetskiy
  2025-09-30 11:34 ` AngeloGioacchino Del Regno
  2025-10-13  9:42 ` AngeloGioacchino Del Regno
  0 siblings, 2 replies; 5+ messages in thread
From: Mikhail Kshevetskiy @ 2025-09-30  2:16 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	AngeloGioacchino Del Regno, devicetree, linux-kernel,
	linux-arm-kernel, linux-mediatek
  Cc: Mikhail Kshevetskiy, Frank Wunderlich

Popular cheap PWM fans for this machine, like the ones coming in
heatsink+fan combos will not work properly at the currently defined
medium speed. Trying different pwm setting using a command

  echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1

I found:

  pwm1 value     fan rotation speed   cpu temperature     notes
  -----------------------------------------------------------------
    0            maximal              31.5 Celsius        too noisy
   40            optimal              35.2 Celsius        no noise hearable
   95            minimal
   above 95      does not rotate      55.5 Celsius
  -----------------------------------------------------------------

Thus only cpu-active-high and cpu-active-low modes are usable.
I think this is wrong.

This patch fixes cpu-active-medium settings for bpi-r3 board.

I know, the patch is not ideal as it can break pwm fan for some users.
Likely this is the only official mt7986-bpi-r3 heatsink+fan solution
available on the market.

This patch may not be enough. Users may wants to tweak their thermal_zone0
trip points, thus tuning fan rotation speed depending on cpu temperature.
That can be done on the base of the following example:

  === example =========
  # cpu temperature below 25 Celsius degrees, no rotation
  echo 25000 > /sys/class/thermal/thermal_zone0/trip_point_4_temp
  # cpu temperature in [25..32] Celsius degrees, normal rotation speed
  echo 32000 > /sys/class/thermal/thermal_zone0/trip_point_3_temp
  # cpu temperature above 50 Celsius degrees, max rotation speed
  echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp
  =====================

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Acked-by: Frank Wunderlich <frank-w@public-files.de>

---
Changes from v1 to v2:
 * improve patch description

Changes from v2 to v3:
 * added question to Frank Wunderlich

Changes from v3 to v4:
 * Acked by Frank Wunderlich
---
 arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts
index ed79ad1ae871..b0cc0cbdff0f 100644
--- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts
+++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3.dts
@@ -42,7 +42,7 @@ fan: pwm-fan {
 		compatible = "pwm-fan";
 		#cooling-cells = <2>;
 		/* cooling level (0, 1, 2) - pwm inverted */
-		cooling-levels = <255 96 0>;
+		cooling-levels = <255 40 0>;
 		pwms = <&pwm 0 10000>;
 		status = "okay";
 	};
-- 
2.51.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
  2025-09-30  2:16 [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed Mikhail Kshevetskiy
@ 2025-09-30 11:34 ` AngeloGioacchino Del Regno
  2025-10-09  8:55   ` Mikhail Kshevetskiy
  2025-10-13  9:42 ` AngeloGioacchino Del Regno
  1 sibling, 1 reply; 5+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-09-30 11:34 UTC (permalink / raw)
  To: Mikhail Kshevetskiy, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Matthias Brugger, devicetree, linux-kernel,
	linux-arm-kernel, linux-mediatek
  Cc: Frank Wunderlich

Il 30/09/25 04:16, Mikhail Kshevetskiy ha scritto:
> Popular cheap PWM fans for this machine, like the ones coming in
> heatsink+fan combos will not work properly at the currently defined
> medium speed. Trying different pwm setting using a command
> 
>    echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
> 
> I found:
> 
>    pwm1 value     fan rotation speed   cpu temperature     notes
>    -----------------------------------------------------------------
>      0            maximal              31.5 Celsius        too noisy
>     40            optimal              35.2 Celsius        no noise hearable
>     95            minimal
>     above 95      does not rotate      55.5 Celsius
>    -----------------------------------------------------------------
> 
> Thus only cpu-active-high and cpu-active-low modes are usable.
> I think this is wrong.
> 
> This patch fixes cpu-active-medium settings for bpi-r3 board.
> 
> I know, the patch is not ideal as it can break pwm fan for some users.
> Likely this is the only official mt7986-bpi-r3 heatsink+fan solution
> available on the market.
> 
> This patch may not be enough. Users may wants to tweak their thermal_zone0
> trip points, thus tuning fan rotation speed depending on cpu temperature.
> That can be done on the base of the following example:
> 
>    === example =========
>    # cpu temperature below 25 Celsius degrees, no rotation
>    echo 25000 > /sys/class/thermal/thermal_zone0/trip_point_4_temp
>    # cpu temperature in [25..32] Celsius degrees, normal rotation speed
>    echo 32000 > /sys/class/thermal/thermal_zone0/trip_point_3_temp
>    # cpu temperature above 50 Celsius degrees, max rotation speed
>    echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp
>    =====================
> 
> Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
> Acked-by: Frank Wunderlich <frank-w@public-files.de>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
  2025-09-30 11:34 ` AngeloGioacchino Del Regno
@ 2025-10-09  8:55   ` Mikhail Kshevetskiy
  2025-10-09 12:04     ` AngeloGioacchino Del Regno
  0 siblings, 1 reply; 5+ messages in thread
From: Mikhail Kshevetskiy @ 2025-10-09  8:55 UTC (permalink / raw)
  To: AngeloGioacchino Del Regno, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Matthias Brugger, devicetree, linux-kernel,
	linux-arm-kernel, linux-mediatek
  Cc: Frank Wunderlich

Is there any chances get it merged to linux-6.18?

Regards,
Mikhail Kshevetskiy



On 30.09.2025 14:34, AngeloGioacchino Del Regno wrote:
> Il 30/09/25 04:16, Mikhail Kshevetskiy ha scritto:
>> Popular cheap PWM fans for this machine, like the ones coming in
>> heatsink+fan combos will not work properly at the currently defined
>> medium speed. Trying different pwm setting using a command
>>
>>    echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
>>
>> I found:
>>
>>    pwm1 value     fan rotation speed   cpu temperature     notes
>>    -----------------------------------------------------------------
>>      0            maximal              31.5 Celsius        too noisy
>>     40            optimal              35.2 Celsius        no noise
>> hearable
>>     95            minimal
>>     above 95      does not rotate      55.5 Celsius
>>    -----------------------------------------------------------------
>>
>> Thus only cpu-active-high and cpu-active-low modes are usable.
>> I think this is wrong.
>>
>> This patch fixes cpu-active-medium settings for bpi-r3 board.
>>
>> I know, the patch is not ideal as it can break pwm fan for some users.
>> Likely this is the only official mt7986-bpi-r3 heatsink+fan solution
>> available on the market.
>>
>> This patch may not be enough. Users may wants to tweak their
>> thermal_zone0
>> trip points, thus tuning fan rotation speed depending on cpu
>> temperature.
>> That can be done on the base of the following example:
>>
>>    === example =========
>>    # cpu temperature below 25 Celsius degrees, no rotation
>>    echo 25000 > /sys/class/thermal/thermal_zone0/trip_point_4_temp
>>    # cpu temperature in [25..32] Celsius degrees, normal rotation speed
>>    echo 32000 > /sys/class/thermal/thermal_zone0/trip_point_3_temp
>>    # cpu temperature above 50 Celsius degrees, max rotation speed
>>    echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp
>>    =====================
>>
>> Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
>> Acked-by: Frank Wunderlich <frank-w@public-files.de>
>
> Reviewed-by: AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com>
>
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
  2025-10-09  8:55   ` Mikhail Kshevetskiy
@ 2025-10-09 12:04     ` AngeloGioacchino Del Regno
  0 siblings, 0 replies; 5+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-10-09 12:04 UTC (permalink / raw)
  To: Mikhail Kshevetskiy, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Matthias Brugger, devicetree, linux-kernel,
	linux-arm-kernel, linux-mediatek
  Cc: Frank Wunderlich

Il 09/10/25 10:55, Mikhail Kshevetskiy ha scritto:
> Is there any chances get it merged to linux-6.18?
> 

No, the window is closed - but I have added this patch to my notes, will be picked
as soon as RC1 is out, will be in linux-next soon after, and will land in 6.19.

Cheers,
Angelo

> Regards,
> Mikhail Kshevetskiy
> 
> 
> 
> On 30.09.2025 14:34, AngeloGioacchino Del Regno wrote:
>> Il 30/09/25 04:16, Mikhail Kshevetskiy ha scritto:
>>> Popular cheap PWM fans for this machine, like the ones coming in
>>> heatsink+fan combos will not work properly at the currently defined
>>> medium speed. Trying different pwm setting using a command
>>>
>>>     echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
>>>
>>> I found:
>>>
>>>     pwm1 value     fan rotation speed   cpu temperature     notes
>>>     -----------------------------------------------------------------
>>>       0            maximal              31.5 Celsius        too noisy
>>>      40            optimal              35.2 Celsius        no noise
>>> hearable
>>>      95            minimal
>>>      above 95      does not rotate      55.5 Celsius
>>>     -----------------------------------------------------------------
>>>
>>> Thus only cpu-active-high and cpu-active-low modes are usable.
>>> I think this is wrong.
>>>
>>> This patch fixes cpu-active-medium settings for bpi-r3 board.
>>>
>>> I know, the patch is not ideal as it can break pwm fan for some users.
>>> Likely this is the only official mt7986-bpi-r3 heatsink+fan solution
>>> available on the market.
>>>
>>> This patch may not be enough. Users may wants to tweak their
>>> thermal_zone0
>>> trip points, thus tuning fan rotation speed depending on cpu
>>> temperature.
>>> That can be done on the base of the following example:
>>>
>>>     === example =========
>>>     # cpu temperature below 25 Celsius degrees, no rotation
>>>     echo 25000 > /sys/class/thermal/thermal_zone0/trip_point_4_temp
>>>     # cpu temperature in [25..32] Celsius degrees, normal rotation speed
>>>     echo 32000 > /sys/class/thermal/thermal_zone0/trip_point_3_temp
>>>     # cpu temperature above 50 Celsius degrees, max rotation speed
>>>     echo 50000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp
>>>     =====================
>>>
>>> Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
>>> Acked-by: Frank Wunderlich <frank-w@public-files.de>
>>
>> Reviewed-by: AngeloGioacchino Del Regno
>> <angelogioacchino.delregno@collabora.com>
>>
>>



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
  2025-09-30  2:16 [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed Mikhail Kshevetskiy
  2025-09-30 11:34 ` AngeloGioacchino Del Regno
@ 2025-10-13  9:42 ` AngeloGioacchino Del Regno
  1 sibling, 0 replies; 5+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-10-13  9:42 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matthias Brugger,
	devicetree, linux-kernel, linux-arm-kernel, linux-mediatek,
	Mikhail Kshevetskiy
  Cc: Frank Wunderlich

On Tue, 30 Sep 2025 05:16:56 +0300, Mikhail Kshevetskiy wrote:
> Popular cheap PWM fans for this machine, like the ones coming in
> heatsink+fan combos will not work properly at the currently defined
> medium speed. Trying different pwm setting using a command
> 
>   echo $value > /sys/devices/platform/pwm-fan/hwmon/hwmon1/pwm1
> 
> I found:
> 
> [...]

Applied to v6.18-next/dts64, thanks!

[1/1] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed
      commit: 8365a3e1fdc3e9a69114165877e0ca281ffdc8de

Cheers,
Angelo



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-10-13  9:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-09-30  2:16 [PATCH RESEND v4] arm64: dts: mediatek: mt7986-bpi-r3: Change fan PWM value for mid speed Mikhail Kshevetskiy
2025-09-30 11:34 ` AngeloGioacchino Del Regno
2025-10-09  8:55   ` Mikhail Kshevetskiy
2025-10-09 12:04     ` AngeloGioacchino Del Regno
2025-10-13  9:42 ` AngeloGioacchino Del Regno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®