| # 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 binding |
| |
| 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] |
| |
| 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>; |
| }; |
| }; |
| ... |