On Tue, Aug 11, 2020 at 08:31:15PM +0800, Finley Xiao wrote: > The default value for k_pu is: > 2 * sustainable_power / (desired_temperature - switch_on_temp) > The default value for k_po is: > sustainable_power / (desired_temperature - switch_on_temp) > The default value for k_i is 10. > > Even though these parameters of the PID controller can be changed > by the following sysfs files: > /sys/class/thermal/thermal_zoneX/k_pu > /sys/class/thermal/thermal_zoneX/k_po > /sys/class/thermal/thermal_zoneX/k_i > > But it's still more convenient to change the default values by devicetree, > so introduce these three optional properties. If provided these properties, > they will be parsed and associated with the thermal zone via the thermal > zone parameters. > > Signed-off-by: Finley Xiao <finley.xiao@xxxxxxxxxxxxxx> > --- > Documentation/devicetree/bindings/thermal/thermal.txt | 14 ++++++++++++++ Bindings should be a separate file and this one is a DT schema now. > drivers/thermal/thermal_of.c | 7 +++++++ > 2 files changed, 21 insertions(+) > > diff --git a/Documentation/devicetree/bindings/thermal/thermal.txt b/Documentation/devicetree/bindings/thermal/thermal.txt > index f78bec19ca35..ebe936b57ded 100644 > --- a/Documentation/devicetree/bindings/thermal/thermal.txt > +++ b/Documentation/devicetree/bindings/thermal/thermal.txt > @@ -165,6 +165,20 @@ Optional property: > 2000mW, while on a 10'' tablet is around > 4500mW. > > +- k-po: Proportional parameter of the PID controller when > + current temperature is above the target. > + Type: signed > + Size: one cell > + > +- k-pu: Proportional parameter of the PID controller when > + current temperature is below the target. > + Type: signed > + Size: one cell > + > +- k-i: Integral parameter of the PID controller. > + Type: signed > + Size: one cell What's PID? I know nothing about the sysfs params, but the binding needs to stand on it's own and needs enough detail to educate me. Rob