1# SPDX-License-Identifier: GPL-2.0-only 2# Copyright (C) 2020 Renesas Electronics Corp. 3%YAML 1.2 4--- 5$id: http://devicetree.org/schemas/thermal/rcar-gen3-thermal.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: Renesas R-Car Gen3 Thermal Sensor 9 10description: 11 On most R-Car Gen3 and later SoCs, the thermal sensor controllers (TSC) 12 control the thermal sensors (THS) which are the analog circuits for 13 measuring temperature (Tj) inside the LSI. 14 15maintainers: 16 - Niklas Söderlund <niklas.soderlund@ragnatech.se> 17 18$ref: thermal-sensor.yaml# 19 20properties: 21 compatible: 22 enum: 23 - renesas,r8a774a1-thermal # RZ/G2M 24 - renesas,r8a774b1-thermal # RZ/G2N 25 - renesas,r8a774e1-thermal # RZ/G2H 26 - renesas,r8a7795-thermal # R-Car H3 27 - renesas,r8a7796-thermal # R-Car M3-W 28 - renesas,r8a77961-thermal # R-Car M3-W+ 29 - renesas,r8a77965-thermal # R-Car M3-N 30 - renesas,r8a77980-thermal # R-Car V3H 31 - renesas,r8a779a0-thermal # R-Car V3U 32 - renesas,r8a779f0-thermal # R-Car S4-8 33 - renesas,r8a779g0-thermal # R-Car V4H 34 - renesas,r8a779h0-thermal # R-Car V4M 35 36 reg: true 37 38 interrupts: 39 items: 40 - description: TEMP1 interrupt 41 - description: TEMP2 interrupt 42 - description: TEMP3 interrupt 43 44 clocks: 45 maxItems: 1 46 47 power-domains: 48 maxItems: 1 49 50 resets: 51 maxItems: 1 52 53 "#thermal-sensor-cells": 54 const: 1 55 56required: 57 - compatible 58 - reg 59 - clocks 60 - power-domains 61 - resets 62 63if: 64 properties: 65 compatible: 66 contains: 67 enum: 68 - renesas,r8a779a0-thermal 69then: 70 properties: 71 reg: 72 items: 73 - description: TSC0 registers 74 - description: TSC1 registers 75 - description: TSC2 registers 76 - description: TSC3 registers 77 - description: TSC4 registers 78else: 79 properties: 80 reg: 81 minItems: 2 82 items: 83 - description: TSC1 registers 84 - description: TSC2 registers 85 - description: TSC3 registers 86 - description: TSC4 registers 87 if: 88 not: 89 properties: 90 compatible: 91 contains: 92 enum: 93 - renesas,r8a779f0-thermal 94 - renesas,r8a779g0-thermal 95 - renesas,r8a779h0-thermal 96 then: 97 required: 98 - interrupts 99 100unevaluatedProperties: false 101 102examples: 103 - | 104 #include <dt-bindings/clock/r8a7795-cpg-mssr.h> 105 #include <dt-bindings/interrupt-controller/arm-gic.h> 106 #include <dt-bindings/power/r8a7795-sysc.h> 107 108 tsc: thermal@e6198000 { 109 compatible = "renesas,r8a7795-thermal"; 110 reg = <0xe6198000 0x100>, 111 <0xe61a0000 0x100>, 112 <0xe61a8000 0x100>; 113 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>, 114 <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>, 115 <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; 116 clocks = <&cpg CPG_MOD 522>; 117 power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 118 resets = <&cpg 522>; 119 #thermal-sensor-cells = <1>; 120 }; 121 122 thermal-zones { 123 sensor_thermal: sensor-thermal { 124 polling-delay-passive = <250>; 125 polling-delay = <1000>; 126 thermal-sensors = <&tsc 0>; 127 128 trips { 129 sensor1_crit: sensor1-crit { 130 temperature = <90000>; 131 hysteresis = <2000>; 132 type = "critical"; 133 }; 134 }; 135 }; 136 }; 137 - | 138 #include <dt-bindings/clock/r8a779a0-cpg-mssr.h> 139 #include <dt-bindings/interrupt-controller/arm-gic.h> 140 #include <dt-bindings/power/r8a779a0-sysc.h> 141 142 tsc_r8a779a0: thermal@e6190000 { 143 compatible = "renesas,r8a779a0-thermal"; 144 reg = <0xe6190000 0x200>, 145 <0xe6198000 0x200>, 146 <0xe61a0000 0x200>, 147 <0xe61a8000 0x200>, 148 <0xe61b0000 0x200>; 149 clocks = <&cpg CPG_MOD 919>; 150 power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>; 151 resets = <&cpg 919>; 152 #thermal-sensor-cells = <1>; 153 }; 154