1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/thermal/samsung,exynos-thermal.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Samsung Exynos SoC Thermal Management Unit (TMU)
10 - Krzysztof Kozlowski <krzk@kernel.org>
13 For multi-instance tmu each instance should have an alias correctly numbered
19 - samsung,exynos3250-tmu
20 - samsung,exynos4412-tmu
21 - samsung,exynos4210-tmu
22 - samsung,exynos5250-tmu
23 - samsung,exynos5260-tmu
24 # For TMU channel 0, 1 on Exynos5420:
25 - samsung,exynos5420-tmu
26 # For TMU channels 2, 3 and 4 of Exynos5420:
27 - samsung,exynos5420-tmu-ext-triminfo
28 - samsung,exynos5433-tmu
41 The Exynos TMU supports generating interrupts when reaching given
42 temperature thresholds. Number of supported thermal trip points depends
43 on the SoC (only first trip points defined in DT will be configured)::
45 - samsung,exynos5433-tmu: 8
46 - samsung,exynos7-tmu: 8
51 - description: TMU instance registers.
55 Note:: On Exynos5420, the TRIMINFO register is misplaced for TMU
56 channels 2, 3 and 4 Use "samsung,exynos5420-tmu-ext-triminfo" in
57 cases, there is a misplaced register, also provide clock to access
59 TRIMINFO at 0x1006c000 contains data for TMU channel 3
60 TRIMINFO at 0x100a0000 contains data for TMU channel 4
61 TRIMINFO at 0x10068000 contains data for TMU channel 2
64 '#thermal-sensor-cells': true
67 description: The regulator node supplying voltage to TMU.
77 - $ref: /schemas/thermal/thermal-sensor.yaml
82 const: samsung,exynos5420-tmu-ext-triminfo
88 Operational clock for TMU channel.
90 Optional clock to access the shared registers (e.g. TRIMINFO) of TMU
95 - const: tmu_triminfo_apbif
104 - samsung,exynos5433-tmu
105 - samsung,exynos7-tmu
111 Operational clock for TMU channel.
113 Optional special clock for functional operation of TMU channel.
127 - samsung,exynos3250-tmu
128 - samsung,exynos4412-tmu
129 - samsung,exynos4210-tmu
130 - samsung,exynos5250-tmu
131 - samsung,exynos5260-tmu
132 - samsung,exynos5420-tmu
142 additionalProperties: false
146 #include <dt-bindings/clock/exynos4.h>
149 compatible = "samsung,exynos4412-tmu";
150 reg = <0x100C0000 0x100>;
151 interrupt-parent = <&combiner>;
153 #thermal-sensor-cells = <0>;
154 clocks = <&clock CLK_TMU_APBIF>;
155 clock-names = "tmu_apbif";
156 vtmu-supply = <&ldo10_reg>;
160 #include <dt-bindings/interrupt-controller/arm-gic.h>
163 compatible = "samsung,exynos5420-tmu-ext-triminfo";
164 reg = <0x10068000 0x100>, <0x1006c000 0x4>;
165 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
166 #thermal-sensor-cells = <0>;
167 clocks = <&clock 318>, <&clock 318>; /* CLK_TMU */
168 clock-names = "tmu_apbif", "tmu_triminfo_apbif";
169 vtmu-supply = <&ldo7_reg>;
173 #include <dt-bindings/interrupt-controller/arm-gic.h>
176 compatible = "samsung,exynos5433-tmu";
177 reg = <0x10060000 0x200>;
178 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
179 #thermal-sensor-cells = <0>;
180 clocks = <&cmu_peris 3>, /* CLK_PCLK_TMU0_APBIF */
181 <&cmu_peris 35>; /* CLK_SCLK_TMU0 */
182 clock-names = "tmu_apbif", "tmu_sclk";
183 vtmu-supply = <&ldo3_reg>;