Message ID | 20220218084604.1669091-2-abailon@baylibre.com |
---|---|
State | New |
Headers | show |
Series | thermal: Add support of multiple sensors | expand |
Hi Alexandre, thanks for your series On 18/02/2022 09:46, Alexandre Bailon wrote: > This adds two optionals properties and update the thermal-sensors > property description to support multiple sensors with a thermal zone. I think it would make sense to first send a patch fixing the missing attribute from txt -> yaml translation with the Fixes tag which was: "A list of thermal sensor phandles and sensor specifier Type: list of used while monitoring the thermal zone" And add in the description if there are more than one sensor, then the max value will be returned. Then provide the code to get the max value. The second series of changes would be the other aggregations and the implementation. > --- > .../bindings/thermal/thermal-zones.yaml | 30 +++++++++++++++++-- > 1 file changed, 27 insertions(+), 3 deletions(-) > > diff --git a/Documentation/devicetree/bindings/thermal/thermal-zones.yaml b/Documentation/devicetree/bindings/thermal/thermal-zones.yaml > index 2d34f3ccb2572..9f944c2364589 100644 > --- a/Documentation/devicetree/bindings/thermal/thermal-zones.yaml > +++ b/Documentation/devicetree/bindings/thermal/thermal-zones.yaml > @@ -77,10 +77,24 @@ patternProperties: > > thermal-sensors: > $ref: /schemas/types.yaml#/definitions/phandle-array > - maxItems: 1 > description: > - The thermal sensor phandle and sensor specifier used to monitor this > - thermal zone. > + An array of thermal sensor phandle and sensor specifier used to > + monitor this thermal zone. > + If the array contains more than one sensor then the returned value > + is the maximum unless aggregation-min or aggregation-avg properties > + are set. > + > + aggregation-min: > + type: boolean > + description: > + Return the minimum temperature when the thermal monitor multiple > + sensors. > + > + aggregation-avg: > + type: boolean > + description: > + Return the average temperature when the thermal monitor multiple > + sensors. Maybe 'aggregation' could be a string? aggregation = "max"; aggregation = "min"; aggregation = "avg"; It should be in the optional section and probably a conditional if thermal-sensors has more than one item > coefficients: > $ref: /schemas/types.yaml#/definitions/uint32-array > @@ -338,5 +352,15 @@ examples: > }; > }; > }; > + > + /* ... */ > + > + soc-max-thermal { > + polling-delay-passive = <250>; > + polling-delay = <1000>; > + thermal-sensors = <&tsens0 5>, <&tsens0 11>; > + trips {}; > + cooling-maps {}; > + }; > }; > ...
diff --git a/Documentation/devicetree/bindings/thermal/thermal-zones.yaml b/Documentation/devicetree/bindings/thermal/thermal-zones.yaml index 2d34f3ccb2572..9f944c2364589 100644 --- a/Documentation/devicetree/bindings/thermal/thermal-zones.yaml +++ b/Documentation/devicetree/bindings/thermal/thermal-zones.yaml @@ -77,10 +77,24 @@ patternProperties: thermal-sensors: $ref: /schemas/types.yaml#/definitions/phandle-array - maxItems: 1 description: - The thermal sensor phandle and sensor specifier used to monitor this - thermal zone. + An array of thermal sensor phandle and sensor specifier used to + monitor this thermal zone. + If the array contains more than one sensor then the returned value + is the maximum unless aggregation-min or aggregation-avg properties + are set. + + aggregation-min: + type: boolean + description: + Return the minimum temperature when the thermal monitor multiple + sensors. + + aggregation-avg: + type: boolean + description: + Return the average temperature when the thermal monitor multiple + sensors. coefficients: $ref: /schemas/types.yaml#/definitions/uint32-array @@ -338,5 +352,15 @@ examples: }; }; }; + + /* ... */ + + soc-max-thermal { + polling-delay-passive = <250>; + polling-delay = <1000>; + thermal-sensors = <&tsens0 5>, <&tsens0 11>; + trips {}; + cooling-maps {}; + }; }; ...
This adds two optionals properties and update the thermal-sensors property description to support multiple sensors with a thermal zone. Signed-off-by: Alexandre Bailon <abailon@baylibre.com> --- .../bindings/thermal/thermal-zones.yaml | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-)