Lines Matching +full:a +full:- +full:za +full:- +full:z0 +full:- +full:9 +full:-
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>
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
28 (temperature derivative over time) in two situations for a thermal zone:
29 1. when passive cooling is activated (polling-delay-passive)
30 2. when the zone just needs to be monitored (polling-delay) or when
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
46 mitigate thermal overload conditions. It does not represent a real device
47 in the system, but acts as a container to link a thermal sensor device,
48 platform-data regarding temperature thresholds and the mitigation actions
52 "^[a-zA-Z][a-zA-Z0-9\\-]{1,12}-thermal$":
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 thermal-sensors:
79 $ref: /schemas/types.yaml#/definitions/phandle-array
86 $ref: /schemas/types.yaml#/definitions/uint32-array
88 An array of integers containing the coefficients of a linear equation
92 z = c0 * x0 + c1 * x1 + ... + c(n-1) * x(n-1) + cn
99 sustainable-power:
104 sustainable power of a 4-inch phone is typically 2000mW, while on a
105 10-inch tablet is around 4500mW.
110 This node describes a set of points in the temperature domain at
112 be taken are defined in another node called cooling-maps.
115 "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$":
121 minimum: -273000
133 (trip temperature - hysteresis). This potentially prevents a
140 - active # enable active cooling e.g. fans
141 - passive # enable passive cooling e.g. throttling cpu
142 - hot # send notification to driver
143 - critical # send notification to driver, trigger shutdown
150 unstable and underlying firmware might even trigger a
151 reboot. Hitting the critical threshold triggers a system
154 The hot trip type can be used to send a notification to
155 the thermal driver (if a .notify callback is registered).
159 the CPU, GPU, bus at a lower frequency.
165 - temperature
166 - hysteresis
167 - type
172 cooling-maps:
175 This node describes the action to be taken when a thermal zone
177 node. The action takes the form of a mapping relation between a
181 "^map[-a-zA-Z0-9]*$":
188 A phandle of a trip point node within this thermal zone.
190 cooling-device:
191 $ref: /schemas/types.yaml#/definitions/phandle-array
193 A list of cooling device phandles along with the minimum
195 device. Using the THERMAL_NO_LIMIT (-1UL) constant in the
196 cooling-device phandle limit specifier lets the framework
210 - trip
211 - cooling-device
215 - polling-delay
216 - polling-delay-passive
217 - thermal-sensors
218 - trips
224 - |
225 #include <dt-bindings/interrupt-controller/arm-gic.h>
226 #include <dt-bindings/thermal/thermal.h>
230 #address-cells = <2>;
231 #size-cells = <2>;
235 tsens0: thermal-sensor@c263000 {
236 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
242 interrupt-names = "uplow", "critical";
243 #thermal-sensor-cells = <1>;
246 tsens1: thermal-sensor@c265000 {
247 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
253 interrupt-names = "uplow", "critical";
254 #thermal-sensor-cells = <1>;
260 thermal-zones {
261 cpu0-thermal {
262 polling-delay-passive = <250>;
263 polling-delay = <1000>;
265 thermal-sensors = <&tsens0 1>;
268 cpu0_alert0: trip-point0 {
274 cpu0_alert1: trip-point1 {
287 cooling-maps {
291 cooling-device = <&CPU0 3 3>, <&CPU1 3 3>,
298 cooling-device = <&CPU0 5 5>, <&CPU1 5 5>,
306 cluster0-thermal {
307 polling-delay-passive = <250>;
308 polling-delay = <1000>;
310 thermal-sensors = <&tsens0 5>;
313 cluster0_alert0: trip-point0 {
328 gpu-top-thermal {
329 polling-delay-passive = <250>;
330 polling-delay = <1000>;
332 thermal-sensors = <&tsens0 11>;
335 gpu1_alert0: trip-point0 {