| # SPDX-License-Identifier: (GPL-2.0) | |
| # Copyright 2020 Linaro Ltd. | |
| %YAML 1.2 | |
| --- | |
| $id: http://devicetree.org/schemas/thermal/thermal-sensor.yaml# | |
| $schema: http://devicetree.org/meta-schemas/core.yaml# | |
| title: Thermal sensor | |
| maintainers: | |
| - Amit Kucheria <amitk@kernel.org> | |
| description: | | |
| Thermal management is achieved in devicetree by describing the sensor hardware | |
| and the software abstraction of thermal zones required to take appropriate | |
| action to mitigate thermal overloads. | |
| The following node types are used to completely describe a thermal management | |
| system in devicetree: | |
| - thermal-sensor: device that measures temperature, has SoC-specific bindings | |
| - cooling-device: device used to dissipate heat either passively or actively | |
| - thermal-zones: a container of the following node types used to describe all | |
| thermal data for the platform | |
| This binding describes the thermal-sensor. | |
| Thermal sensor devices provide temperature sensing capabilities on thermal | |
| zones. Typical devices are I2C ADC converters and bandgaps. Thermal sensor | |
| devices may control one or more internal sensors. | |
| properties: | |
| "#thermal-sensor-cells": | |
| description: | |
| Used to uniquely identify a thermal sensor instance within an IC. Will be | |
| 0 on sensor nodes with only a single sensor and at least 1 on nodes | |
| containing several internal sensors. | |
| enum: [0, 1] | |
| required: | |
| - "#thermal-sensor-cells" | |
| additionalProperties: true | |
| examples: | |
| - | | |
| #include <dt-bindings/interrupt-controller/arm-gic.h> | |
| // Example 1: SDM845 TSENS | |
| soc: soc { | |
| #address-cells = <2>; | |
| #size-cells = <2>; | |
| /* ... */ | |
| tsens0: thermal-sensor@c263000 { | |
| compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; | |
| reg = <0 0x0c263000 0 0x1ff>, /* TM */ | |
| <0 0x0c222000 0 0x1ff>; /* SROT */ | |
| #qcom,sensors = <13>; | |
| interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>, | |
| <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>; | |
| interrupt-names = "uplow", "critical"; | |
| #thermal-sensor-cells = <1>; | |
| }; | |
| tsens1: thermal-sensor@c265000 { | |
| compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; | |
| reg = <0 0x0c265000 0 0x1ff>, /* TM */ | |
| <0 0x0c223000 0 0x1ff>; /* SROT */ | |
| #qcom,sensors = <8>; | |
| interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>, | |
| <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>; | |
| interrupt-names = "uplow", "critical"; | |
| #thermal-sensor-cells = <1>; | |
| }; | |
| }; | |
| ... |