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