1 # SPDX-License-Identifier: (GPL-2.0) 1 # SPDX-License-Identifier: (GPL-2.0) 2 # Copyright 2020 Linaro Ltd. 2 # Copyright 2020 Linaro Ltd. 3 %YAML 1.2 3 %YAML 1.2 4 --- 4 --- 5 $id: http://devicetree.org/schemas/thermal/the 5 $id: http://devicetree.org/schemas/thermal/thermal-sensor.yaml# 6 $schema: http://devicetree.org/meta-schemas/co 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 7 8 title: Thermal sensor !! 8 title: Thermal sensor binding 9 9 10 maintainers: 10 maintainers: 11 - Amit Kucheria <amitk@kernel.org> 11 - Amit Kucheria <amitk@kernel.org> 12 12 13 description: | 13 description: | 14 Thermal management is achieved in devicetree 14 Thermal management is achieved in devicetree by describing the sensor hardware 15 and the software abstraction of thermal zone 15 and the software abstraction of thermal zones required to take appropriate 16 action to mitigate thermal overloads. 16 action to mitigate thermal overloads. 17 17 18 The following node types are used to complet 18 The following node types are used to completely describe a thermal management 19 system in devicetree: 19 system in devicetree: 20 - thermal-sensor: device that measures temp 20 - thermal-sensor: device that measures temperature, has SoC-specific bindings 21 - cooling-device: device used to dissipate 21 - cooling-device: device used to dissipate heat either passively or actively 22 - thermal-zones: a container of the followi 22 - thermal-zones: a container of the following node types used to describe all 23 thermal data for the platform 23 thermal data for the platform 24 24 25 This binding describes the thermal-sensor. 25 This binding describes the thermal-sensor. 26 26 27 Thermal sensor devices provide temperature s 27 Thermal sensor devices provide temperature sensing capabilities on thermal 28 zones. Typical devices are I2C ADC converter 28 zones. Typical devices are I2C ADC converters and bandgaps. Thermal sensor 29 devices may control one or more internal sen 29 devices may control one or more internal sensors. 30 30 31 properties: 31 properties: 32 "#thermal-sensor-cells": 32 "#thermal-sensor-cells": 33 description: 33 description: 34 Used to uniquely identify a thermal sens 34 Used to uniquely identify a thermal sensor instance within an IC. Will be 35 0 on sensor nodes with only a single sen 35 0 on sensor nodes with only a single sensor and at least 1 on nodes 36 containing several internal sensors. 36 containing several internal sensors. 37 enum: [0, 1] 37 enum: [0, 1] 38 << 39 required: << 40 - "#thermal-sensor-cells" << 41 38 42 additionalProperties: true 39 additionalProperties: true 43 40 44 examples: 41 examples: 45 - | 42 - | 46 #include <dt-bindings/interrupt-controller 43 #include <dt-bindings/interrupt-controller/arm-gic.h> 47 44 48 // Example 1: SDM845 TSENS 45 // Example 1: SDM845 TSENS 49 soc: soc { 46 soc: soc { 50 #address-cells = <2>; 47 #address-cells = <2>; 51 #size-cells = <2>; 48 #size-cells = <2>; 52 49 53 /* ... */ 50 /* ... */ 54 51 55 tsens0: thermal-sensor@c263000 { 52 tsens0: thermal-sensor@c263000 { 56 compatible = "qcom,sdm845- 53 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; 57 reg = <0 0x0c263000 0 0x1f 54 reg = <0 0x0c263000 0 0x1ff>, /* TM */ 58 <0 0x0c222000 0 0x1f 55 <0 0x0c222000 0 0x1ff>; /* SROT */ 59 #qcom,sensors = <13>; 56 #qcom,sensors = <13>; 60 interrupts = <GIC_SPI 506 57 interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>, 61 <GIC_SPI 508 58 <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>; 62 interrupt-names = "uplow", 59 interrupt-names = "uplow", "critical"; 63 #thermal-sensor-cells = <1 60 #thermal-sensor-cells = <1>; 64 }; 61 }; 65 62 66 tsens1: thermal-sensor@c265000 { 63 tsens1: thermal-sensor@c265000 { 67 compatible = "qcom,sdm845- 64 compatible = "qcom,sdm845-tsens", "qcom,tsens-v2"; 68 reg = <0 0x0c265000 0 0x1f 65 reg = <0 0x0c265000 0 0x1ff>, /* TM */ 69 <0 0x0c223000 0 0x1f 66 <0 0x0c223000 0 0x1ff>; /* SROT */ 70 #qcom,sensors = <8>; 67 #qcom,sensors = <8>; 71 interrupts = <GIC_SPI 507 68 interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>, 72 <GIC_SPI 509 69 <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>; 73 interrupt-names = "uplow", 70 interrupt-names = "uplow", "critical"; 74 #thermal-sensor-cells = <1 71 #thermal-sensor-cells = <1>; 75 }; 72 }; 76 }; 73 }; 77 ... 74 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.