Lines Matching +full:polling +full:- +full:delay +full:- +full:passive
1 # SPDX-License-Identifier: (GPL-2.0)
4 ---
5 $id: http://devicetree.org/schemas/thermal/thermal-zones.yaml#
6 $schema: http://devicetree.org/meta-schemas/base.yaml#
11 - Amit Kucheria <amitk@kernel.org>
20 - thermal-sensor: device that measures temperature, has SoC-specific bindings
21 - cooling-device: device used to dissipate heat either passively or actively
22 - thermal-zones: a container of the following node types used to describe all
25 This binding describes the thermal-zones.
27 The polling-delay properties of a thermal-zone are bound to the maximum dT/dt
29 1. when passive cooling is activated (polling-delay-passive)
30 2. when the zone just needs to be monitored (polling-delay) or when
36 unexpectedly between polls. Choosing the right polling delays shall avoid
42 const: thermal-zones
44 A /thermal-zones node is required in order to use the thermal framework to
48 platform-data regarding temperature thresholds and the mitigation actions
52 # Node name is limited in size due to Linux kernel requirements - 19
55 "^[a-zA-Z][a-zA-Z0-9\\-]{1,10}-thermal$":
60 this zone, one sub-node containing the various trip points for this
61 zone and one sub-node containing all the zone cooling-maps.
64 polling-delay:
68 checking this thermal zone. Setting this to 0 disables the polling
72 polling-delay-passive:
76 checking this thermal zone while doing passive cooling. Setting
77 this to 0 disables the polling timers setup by the thermal
81 thermal-sensors:
82 $ref: /schemas/types.yaml#/definitions/phandle-array
89 $ref: /schemas/types.yaml#/definitions/uint32-array
95 z = c0 * x0 + c1 * x1 + ... + c(n-1) * x(n-1) + cn
102 sustainable-power:
107 sustainable power of a 4-inch phone is typically 2000mW, while on a
108 10-inch tablet is around 4500mW.
115 be taken are defined in another node called cooling-maps.
118 "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$":
124 minimum: -273000
136 (trip temperature - hysteresis). This potentially prevents a
143 - active # enable active cooling e.g. fans
144 - passive # enable passive cooling e.g. throttling cpu
145 - hot # send notification to driver
146 - critical # send notification to driver, trigger shutdown
148 There are four valid trip types: active, passive, hot,
161 The passive trip type can be used to slow down HW e.g. run
168 - temperature
169 - hysteresis
170 - type
175 cooling-maps:
185 "^map[-a-zA-Z0-9]*$":
194 cooling-device:
195 $ref: /schemas/types.yaml#/definitions/phandle-array
199 device. Using the THERMAL_NO_LIMIT (-1UL) constant in the
200 cooling-device phandle limit specifier lets the framework
213 - trip
214 - cooling-device
218 - polling-delay
219 - polling-delay-passive
220 - thermal-sensors
221 - trips
228 - |
229 #include <dt-bindings/interrupt-controller/arm-gic.h>
230 #include <dt-bindings/thermal/thermal.h>
234 #address-cells = <2>;
235 #size-cells = <2>;
239 tsens0: thermal-sensor@c263000 {
240 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
246 interrupt-names = "uplow", "critical";
247 #thermal-sensor-cells = <1>;
250 tsens1: thermal-sensor@c265000 {
251 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
257 interrupt-names = "uplow", "critical";
258 #thermal-sensor-cells = <1>;
264 thermal-zones {
265 cpu0-thermal {
266 polling-delay-passive = <250>;
267 polling-delay = <1000>;
269 thermal-sensors = <&tsens0 1>;
272 cpu0_alert0: trip-point0 {
275 type = "passive";
278 cpu0_alert1: trip-point1 {
281 type = "passive";
291 cooling-maps {
295 cooling-device = <&CPU0 3 3>, <&CPU1 3 3>,
302 cooling-device = <&CPU0 5 5>, <&CPU1 5 5>,
310 cluster0-thermal {
311 polling-delay-passive = <250>;
312 polling-delay = <1000>;
314 thermal-sensors = <&tsens0 5>;
317 cluster0_alert0: trip-point0 {
332 gpu-top-thermal {
333 polling-delay-passive = <250>;
334 polling-delay = <1000>;
336 thermal-sensors = <&tsens0 11>;
339 gpu1_alert0: trip-point0 {