Lines Matching +full:dt +full:- +full:node
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 - Daniel Lezcano <daniel.lezcano@linaro.org>
18 The following node types are used to completely describe a thermal management
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
33 The maximum dT/dt is highly bound to hardware power consumption and
35 max dT/dt, such that a device does not cross several trip boundaries
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 "^[a-zA-Z][a-zA-Z0-9\\-]{1,12}-thermal$":
55 Each thermal zone node contains information about how frequently it
57 this zone, one sub-node containing the various trip points for this
58 zone and one sub-node containing all the zone cooling-maps.
61 polling-delay:
69 polling-delay-passive:
78 critical-action:
91 - shutdown
92 - reboot
94 thermal-sensors:
95 $ref: /schemas/types.yaml#/definitions/phandle-array
102 $ref: /schemas/types.yaml#/definitions/uint32-array
108 z = c0 * x0 + c1 * x1 + ... + c(n-1) * x(n-1) + cn
115 sustainable-power:
120 sustainable power of a 4-inch phone is typically 2000mW, while on a
121 10-inch tablet is around 4500mW.
126 This node describes a set of points in the temperature domain at
128 be taken are defined in another node called cooling-maps.
131 "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$":
137 minimum: -273000
149 (trip temperature - hysteresis). This potentially prevents a
156 - active # enable active cooling e.g. fans
157 - passive # enable passive cooling e.g. throttling cpu
158 - hot # send notification to driver
159 - critical # send notification to driver, trigger shutdown
181 - temperature
182 - hysteresis
183 - type
188 cooling-maps:
192 This node describes the action to be taken when a thermal zone
194 node. The action takes the form of a mapping relation between a
198 "^map[-a-zA-Z0-9]*$":
205 A phandle of a trip point node within this thermal zone.
207 cooling-device:
208 $ref: /schemas/types.yaml#/definitions/phandle-array
212 device. Using the THERMAL_NO_LIMIT (-1UL) constant in the
213 cooling-device phandle limit specifier lets the framework
226 - trip
227 - cooling-device
231 - polling-delay
232 - polling-delay-passive
233 - thermal-sensors
234 - trips
241 - |
242 #include <dt-bindings/interrupt-controller/arm-gic.h>
243 #include <dt-bindings/thermal/thermal.h>
247 #address-cells = <2>;
248 #size-cells = <2>;
252 tsens0: thermal-sensor@c263000 {
253 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
259 interrupt-names = "uplow", "critical";
260 #thermal-sensor-cells = <1>;
263 tsens1: thermal-sensor@c265000 {
264 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
270 interrupt-names = "uplow", "critical";
271 #thermal-sensor-cells = <1>;
277 thermal-zones {
278 cpu0-thermal {
279 polling-delay-passive = <250>;
280 polling-delay = <1000>;
282 thermal-sensors = <&tsens0 1>;
285 cpu0_alert0: trip-point0 {
291 cpu0_alert1: trip-point1 {
304 cooling-maps {
308 cooling-device = <&CPU0 3 3>, <&CPU1 3 3>,
315 cooling-device = <&CPU0 5 5>, <&CPU1 5 5>,
323 cluster0-thermal {
324 polling-delay-passive = <250>;
325 polling-delay = <1000>;
327 thermal-sensors = <&tsens0 5>;
330 cluster0_alert0: trip-point0 {
345 gpu-top-thermal {
346 polling-delay-passive = <250>;
347 polling-delay = <1000>;
349 thermal-sensors = <&tsens0 11>;
352 gpu1_alert0: trip-point0 {