Aw: Re: Re: Re: [PATCH] Fix mt7622.dtsi thermal cpu
Daniel Lezcano
daniel.lezcano at linaro.org
Fri Jun 25 05:50:42 PDT 2021
On 25/06/2021 14:28, Frank Wunderlich wrote:
>> Gesendet: Freitag, 25. Juni 2021 um 13:47 Uhr
>> Von: "Daniel Lezcano" <daniel.lezcano at linaro.org>
>
>>> but we need to disable the passive trip as cpu-trotteling starts there...the higher temperature trips are currently not reached
>>
>> Sorry, can you rephrase it ? I'm not getting the point.
>
> the problem currently is that passive is at 47degress Celsius and
> trottles cpu, active (67°C) and hot points are never reached this way.
> so at least we need to change temperatures in dtsi, and maybe disable
> cpu-trotteling on passive trip. imho fan will never start if it is in
> active and cpu is trottled before in passive
Ok, thanks for the clarification.
>>> 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>;
>>
>> May be increase the passive temp to 75°C.
>>
>>> hysteresis = <2000>;
>>> type = "passive";
>>> };
>>>
>>> cpu_active: cpu-active {
>>> - temperature = <67000>;
>>> + temperature = <80000>;
>>> hysteresis = <2000>;
>>> type = "active";
>>> };
>>
>> Move the active trip 'cpu_active' to mt7622-bananapi-bpi-r64.dts. and
>> set it to 70°C in the mt7622-bananapi-bpi-r64.dts, so the fan will act
>> before the cpu throttling.
>>
>> The behavior should be the following: The temperature reaches 70°C, the
>> fan will start, if the temperature continues to increase, it will
>> increase the speed. If the temperature reaches 75°C, the fan is still
>> rotating at full speed but the cpu begins to be throttled.
>
> passive to 75 and active lower to 70? is this as intended that active comes before passive?
Yes. So there is a default passive mitigation temp for the SoC at 75°C.
And the bpi has a setup with a fan mitigating before the cpu throttling.
> mt7622-bananapi-bpi-r64.dts:
>
> &cpu_thermal {
> trips {
> cpu_passive: cpu-passive {
> temperature = <75000>;
> hysteresis = <2000>;
> type = "passive";
> };
No need to add this trip point, it should be changed to 75°C in SoC DT
mt7622.dtsi. This fragment of DT will concatenate with the previous one.
> cpu_active: cpu-active {
> temperature = <70000>;
> hysteresis = <2000>;
> type = "active";
> };
> };
>
> cooling-maps {
> map1 {
> trip = <&cpu_active>;
> cooling-device = <&fan0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
> };
> };
> };
>
>
>> AFAIU, it is a Cortex-A53 running @1.35GH, so except the board is in a
>> black metal box under the sun, I don't see how we can reach this thermal
>> limits.
>>
>>> @@ -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>;
>>
>> You should keep it untouched.
>
> then cpu is trottled at passive point (currently 47°C) and imho fan does not start at active
>
>>> };
>
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
More information about the Linux-mediatek
mailing list