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
223 - |
224 #include <dt-bindings/interrupt-controller/arm-gic.h>
225 #include <dt-bindings/thermal/thermal.h>
229 #address-cells = <2>;
230 #size-cells = <2>;
234 tsens0: thermal-sensor@c263000 {
235 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
241 interrupt-names = "uplow", "critical";
242 #thermal-sensor-cells = <1>;
245 tsens1: thermal-sensor@c265000 {
246 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2";
252 interrupt-names = "uplow", "critical";
253 #thermal-sensor-cells = <1>;
259 thermal-zones {
260 cpu0-thermal {
261 polling-delay-passive = <250>;
262 polling-delay = <1000>;
264 thermal-sensors = <&tsens0 1>;
267 cpu0_alert0: trip-point0 {
273 cpu0_alert1: trip-point1 {
286 cooling-maps {
290 cooling-device = <&CPU0 3 3>, <&CPU1 3 3>,
297 cooling-device = <&CPU0 5 5>, <&CPU1 5 5>,
305 cluster0-thermal {
306 polling-delay-passive = <250>;
307 polling-delay = <1000>;
309 thermal-sensors = <&tsens0 5>;
312 cluster0_alert0: trip-point0 {
327 gpu-top-thermal {
328 polling-delay-passive = <250>;
329 polling-delay = <1000>;
331 thermal-sensors = <&tsens0 11>;
334 gpu1_alert0: trip-point0 {