Re: [PATCH v3 1/3] ARM: tegra: Add device-tree for Ouya
From: Dmitry Osipenko
Date: Mon Oct 05 2020 - 10:29:58 EST
05.10.2020 17:22, Peter Geis пишет:
> On Mon, Oct 5, 2020 at 10:02 AM Dmitry Osipenko <digetx@xxxxxxxxx> wrote:
>>
>> 04.10.2020 16:31, Peter Geis пишет:
>>> + thermal-zones {
>>> + cpu_thermal: cpu-thermal {
>>> + polling-delay = <5000>;
>>> + polling-delay-passive = <5000>;
>>> +
>>> + thermal-sensors = <&cpu_temp 1>;
>>> +
>>> + trips {
>>> + cpu_alert0: cpu-alert0 {
>>> + temperature = <50000>;
>>> + hysteresis = <10000>;
>>
>> Hello, Peter!
>>
>> A day ago I was tuning thermal zones for Nexus 7 because found that the
>> current variant is a bit too unpractical. In particular temperature
>> hysteresis should be small, otherwise cpufreq could get throttled
>> enormously to the point that device becomes unusable. This is an
>> active-cooling zone, but it looks to me that hysteresis is a bit too
>> high and should make Ouya much noisier than it could be.
>>
>> I suggest to try to set hysteresis to 0.2C here, i.e. hysteresis = <200>.
>>
>> I also suggest to bump the temperature threshold to 55C in order to
>> ignore temporal temperature spikes because CPU temp should be about 40C
>> during idle and then it may raise quickly for a brief moments during
>> average usage.
>
> Good Morning,
>
> The Ouya has a rather large heatsink with poor conductivity and a
> single stage fan.
> The fan is not terribly loud, as it runs at a rather low rpm.
> The temperature at the cpu tends to be much higher than observed at
> the heatsink.
> I've found that a low hysteresis value leads to a situation where the
> fan is constantly toggling on and off.
> I actually burned out the power transistor driving the fan on my first
> Ouya this way.
> The high hysteresis value provides a good balance of fan on/off time
> under most loads.
> The temperature threshold was chosen for this as well.
>
>>
>>> + type = "active";
>>> + };
>>> + cpu_alert1: cpu-alert1 {
>>> + temperature = <70000>;
>>> + hysteresis = <5000>;
>>> + type = "passive";
>>> + };
>>
>> And here to 0.2C as well.
>
> This value was chosen to protect the CPU in case of fan failure.
> Again, with the large heatsink and poor conductivity we need to
> maintain throttling for longer.
> Otherwise the cpu temp will overshoot and risk thermal shutdown before
> throttling can prevent it.
Alright! Then I don't have any more comments for now, thanks :)