Lines Matching +full:cooling +full:- +full:device

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>
15 and the software abstraction of cooling devices and thermal zones required to
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
31 active cooling is activated.
35 max dT/dt, such that a device does not cross several trip boundaries
37 having the device in temperature ranges that may damage the silicon structures
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:
73 checking this thermal zone while doing passive cooling. Setting
78 thermal-sensors:
79 $ref: /schemas/types.yaml#/definitions/phandle-array
86 $ref: /schemas/types.yaml#/definitions/uint32-array
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.
112 be taken are defined in another node called cooling-maps.
115 "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$":
121 minimum: -273000
131 millicelsius. Any cooling action initiated by the framework is
133 (trip temperature - hysteresis). This potentially prevents a
135 cooling action is removed.
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
162 help in cooling e.g. fans can be sped up or slowed down
165 - temperature
166 - hysteresis
167 - type
172 cooling-maps:
178 trip and the target cooling device state.
181 "^map[-a-zA-Z0-9]*$":
190 cooling-device:
191 $ref: /schemas/types.yaml#/definitions/phandle-array
193 A list of cooling device phandles along with the minimum
194 and maximum cooling state specifiers for each cooling
195 device. Using the THERMAL_NO_LIMIT (-1UL) constant in the
196 cooling-device phandle limit specifier lets the framework
197 use the minimum and maximum cooling state for that cooling
198 device automatically.
203 The cooling contribution to the thermal zone of the referred
204 cooling device at the referred trip point. The contribution is
205 a ratio of the sum of all cooling contributions within a
209 - trip
210 - cooling-device
214 - polling-delay
215 - polling-delay-passive
216 - thermal-sensors
217 - 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 {