Lines Matching +full:sensor +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>
14 Thermal management is achieved in devicetree by describing the sensor hardware
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
42 const: thermal-zones
44 A /thermal-zones node is required in order to use the thermal framework to
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 # Node name is limited in size due to Linux kernel requirements - 19
55 "^[a-zA-Z][a-zA-Z0-9\\-]{1,10}-thermal$":
58 Each thermal zone node contains information about how frequently it
59 must be checked, the sensor responsible for reporting temperature for
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:
72 polling-delay-passive:
81 critical-action:
93 - shutdown
94 - reboot
96 thermal-sensors:
97 $ref: /schemas/types.yaml#/definitions/phandle-array
100 The thermal sensor phandle and sensor specifier used to monitor this
104 $ref: /schemas/types.yaml#/definitions/uint32-array
110 z = c0 * x0 + c1 * x1 + ... + c(n-1) * x(n-1) + cn
115 sensor ID. Additional coefficients are interpreted as constant offset.
117 sustainable-power:
122 sustainable power of a 4-inch phone is typically 2000mW, while on a
123 10-inch tablet is around 4500mW.
128 This node describes a set of points in the temperature domain at
130 be taken are defined in another node called cooling-maps.
133 "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$":
139 minimum: -273000
151 (trip temperature - hysteresis). This potentially prevents a
158 - active # enable active cooling e.g. fans
159 - passive # enable passive cooling e.g. throttling cpu
160 - hot # send notification to driver
161 - critical # send notification to driver, trigger shutdown
183 - temperature
184 - hysteresis
185 - type
190 cooling-maps:
194 This node describes the action to be taken when a thermal zone
196 node. The action takes the form of a mapping relation between a
200 "^map[-a-zA-Z0-9]*$":
207 A phandle of a trip point node within this thermal zone.
209 cooling-device:
210 $ref: /schemas/types.yaml#/definitions/phandle-array
214 device. Using the THERMAL_NO_LIMIT (-1UL) constant in the
215 cooling-device phandle limit specifier lets the framework
228 - trip
229 - cooling-device
233 - thermal-sensors
240 - |
241 #include <dt-bindings/interrupt-controller/arm-gic.h>
242 #include <dt-bindings/thermal/thermal.h>
246 #address-cells = <2>;
247 #size-cells = <2>;
251 tsens0: thermal-sensor@c263000 {
252 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
258 interrupt-names = "uplow", "critical";
259 #thermal-sensor-cells = <1>;
262 tsens1: thermal-sensor@c265000 {
263 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
269 interrupt-names = "uplow", "critical";
270 #thermal-sensor-cells = <1>;
276 thermal-zones {
277 cpu0-thermal {
278 polling-delay-passive = <250>;
279 polling-delay = <1000>;
281 thermal-sensors = <&tsens0 1>;
284 cpu0_alert0: trip-point0 {
290 cpu0_alert1: trip-point1 {
303 cooling-maps {
307 cooling-device = <&CPU0 3 3>, <&CPU1 3 3>,
314 cooling-device = <&CPU0 5 5>, <&CPU1 5 5>,
322 cluster0-thermal {
323 polling-delay-passive = <250>;
324 polling-delay = <1000>;
326 thermal-sensors = <&tsens0 5>;
329 cluster0_alert0: trip-point0 {
344 gpu-top-thermal {
345 polling-delay-passive = <250>;
346 polling-delay = <1000>;
348 thermal-sensors = <&tsens0 11>;
351 gpu1_alert0: trip-point0 {