Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1350177 > unrolled thread

Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property

Started byJavi Merino <javi.merino@arm.com>
First post2016-03-04 13:00 +0100
Last post2016-03-09 12:20 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Javi Merino <javi.merino@arm.com> - 2016-03-04 13:00 +0100
    Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Leo Yan <leo.yan@linaro.org> - 2016-03-08 15:00 +0100
      Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Eduardo Valentin <edubezval@gmail.com> - 2016-03-08 22:00 +0100
        Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property Javi Merino <javi.merino@arm.com> - 2016-03-09 12:20 +0100

#1350177 — Re: [PATCH v2 1/5] thermal: change "hysteresis" as optional property

FromJavi Merino <javi.merino@arm.com>
Date2016-03-04 13:00 +0100
SubjectRe: [PATCH v2 1/5] thermal: change "hysteresis" as optional property
Message-ID<r8WyK-69A-7@gated-at.bofh.it>
On Fri, Mar 04, 2016 at 11:03:49AM +0800, Leo Yan wrote:
> Hi Eduardo,
> 
> On Thu, Mar 03, 2016 at 08:29:44AM -0800, Eduardo Valentin wrote:
> > Hi Leo,
> > 
> > On Fri, Feb 26, 2016 at 11:43:43AM +0800, Leo Yan wrote:
> > > The property "hysteresis" is mandatory for trip points, so if without
> > > it the thermal zone cannot register successfully. But "hysteresis" is
> > > ignored in the thermal subsystem and only inquired by several thermal
> > > sensor drivers.
> > 
> > I am not sure this a good direction to go. Remember that Linux
> > implementation not necessarily has to be the implication of the DT
> > binding. Hysteresis is a property that plays a significant role on
> > thermal control systems, which in many cases avoid overshooting cooling
> > actions. Having the DT writer to explicitly set it to 0 means that zone
> > does not suffer of overshooting and does not need hysteresis.
> 
> After review current code, the "hysteresis" is used to calculate
> temperature falling threshold with a more conservative value; so that
> finally avoid overshooting issue.
> 
> Please confirm if is my understanding correct or not?
> 
> > If the Linux thermal subsystem has a problem with handling hysteresis, I
> > would rather fix Linux code than relaxing the DT binding. Or if you
> > still believe hysteresis is really optional, I would prefer to see a
> > better justification than "Linux ignores it".

I see it the other way round, Is hysteresis a property that, without
it, the thermal code can't configure itself so it fails to create the
trip point?  The current code goes "There is no hysteresis for this
property, I don't know how to set up this trip point!".  I think we
can do better than this.

> If we think about power allocator governor, PID's two parameters are
> also used to dismiss overshooting issue: one is k_po (proportional
> term), another is k_i (integral term). So that means after we apply
> power allocator governor, we don't need parameter "hysteresis" due PID
> algorithm can automatically dismiss potential errors.

I disagree.  We shouldn't base DT decisions based on only one
governor in linux.  Having said that, AFAICS all governors currently
ignore hysteresis.

Cheers,
Javi

[toc] | [next] | [standalone]


#1353070

FromLeo Yan <leo.yan@linaro.org>
Date2016-03-08 15:00 +0100
Message-ID<raql5-1Bi-37@gated-at.bofh.it>
In reply to#1350177
Hi Eduardo,

On Fri, Mar 04, 2016 at 11:57:53AM +0000, Javi Merino wrote:
> On Fri, Mar 04, 2016 at 11:03:49AM +0800, Leo Yan wrote:
> > On Thu, Mar 03, 2016 at 08:29:44AM -0800, Eduardo Valentin wrote:
> > > On Fri, Feb 26, 2016 at 11:43:43AM +0800, Leo Yan wrote:

[...]

> > > > The property "hysteresis" is mandatory for trip points, so if without
> > > > it the thermal zone cannot register successfully. But "hysteresis" is
> > > > ignored in the thermal subsystem and only inquired by several thermal
> > > > sensor drivers.
> > > 
> > > If the Linux thermal subsystem has a problem with handling hysteresis, I
> > > would rather fix Linux code than relaxing the DT binding. Or if you
> > > still believe hysteresis is really optional, I would prefer to see a
> > > better justification than "Linux ignores it".
> 
> I see it the other way round, Is hysteresis a property that, without
> it, the thermal code can't configure itself so it fails to create the
> trip point?  The current code goes "There is no hysteresis for this
> property, I don't know how to set up this trip point!".  I think we
> can do better than this.

Do you agree with Javi's suggestion? If you think it's okay, I will
move on to send out a new version patch based on Javi's comments.

Thanks,
Leo Yan

[toc] | [prev] | [next] | [standalone]


#1353402

FromEduardo Valentin <edubezval@gmail.com>
Date2016-03-08 22:00 +0100
Message-ID<rawTw-68n-1@gated-at.bofh.it>
In reply to#1353070
On Tue, Mar 08, 2016 at 09:57:43PM +0800, Leo Yan wrote:
> Hi Eduardo,
> 
> On Fri, Mar 04, 2016 at 11:57:53AM +0000, Javi Merino wrote:
> > On Fri, Mar 04, 2016 at 11:03:49AM +0800, Leo Yan wrote:
> > > On Thu, Mar 03, 2016 at 08:29:44AM -0800, Eduardo Valentin wrote:
> > > > On Fri, Feb 26, 2016 at 11:43:43AM +0800, Leo Yan wrote:
> 
> [...]
> 
> > > > > The property "hysteresis" is mandatory for trip points, so if without
> > > > > it the thermal zone cannot register successfully. But "hysteresis" is
> > > > > ignored in the thermal subsystem and only inquired by several thermal
> > > > > sensor drivers.
> > > > 
> > > > If the Linux thermal subsystem has a problem with handling hysteresis, I
> > > > would rather fix Linux code than relaxing the DT binding. Or if you
> > > > still believe hysteresis is really optional, I would prefer to see a
> > > > better justification than "Linux ignores it".
> > 
> > I see it the other way round, Is hysteresis a property that, without
> > it, the thermal code can't configure itself so it fails to create the
> > trip point?  The current code goes "There is no hysteresis for this
> > property, I don't know how to set up this trip point!".  I think we
> > can do better than this.
> 
> Do you agree with Javi's suggestion? If you think it's okay, I will
> move on to send out a new version patch based on Javi's comments.

No I don't. This discussion so far has been about Linux code. I still
havent seen an argument explaining why hysteresis has to be optional.

BR,

> 
> Thanks,
> Leo Yan

[toc] | [prev] | [next] | [standalone]


#1354018

FromJavi Merino <javi.merino@arm.com>
Date2016-03-09 12:20 +0100
Message-ID<raKjN-77j-29@gated-at.bofh.it>
In reply to#1353402
On Tue, Mar 08, 2016 at 12:55:59PM -0800, Eduardo Valentin wrote:
> On Tue, Mar 08, 2016 at 09:57:43PM +0800, Leo Yan wrote:
> > Hi Eduardo,
> > 
> > On Fri, Mar 04, 2016 at 11:57:53AM +0000, Javi Merino wrote:
> > > On Fri, Mar 04, 2016 at 11:03:49AM +0800, Leo Yan wrote:
> > > > On Thu, Mar 03, 2016 at 08:29:44AM -0800, Eduardo Valentin wrote:
> > > > > On Fri, Feb 26, 2016 at 11:43:43AM +0800, Leo Yan wrote:
> > 
> > [...]
> > 
> > > > > > The property "hysteresis" is mandatory for trip points, so if without
> > > > > > it the thermal zone cannot register successfully. But "hysteresis" is
> > > > > > ignored in the thermal subsystem and only inquired by several thermal
> > > > > > sensor drivers.
> > > > > 
> > > > > If the Linux thermal subsystem has a problem with handling hysteresis, I
> > > > > would rather fix Linux code than relaxing the DT binding. Or if you
> > > > > still believe hysteresis is really optional, I would prefer to see a
> > > > > better justification than "Linux ignores it".
> > > 
> > > I see it the other way round, Is hysteresis a property that, without
> > > it, the thermal code can't configure itself so it fails to create the
> > > trip point?  The current code goes "There is no hysteresis for this
> > > property, I don't know how to set up this trip point!".  I think we
> > > can do better than this.
> > 
> > Do you agree with Javi's suggestion? If you think it's okay, I will
> > move on to send out a new version patch based on Javi's comments.
> 
> No I don't. This discussion so far has been about Linux code. I still
> havent seen an argument explaining why hysteresis has to be optional.

Fair enough.  Looks like I'm holding this driver from being
upstreamed, so I'll back off.

Leo, sorry for misguiding you.  Please bring back the hysteresis
property you had in v1.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web