1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/thermal/allwinner,sun8i-a83t-ths.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Allwinner SUN8I Thermal Controller 8 9maintainers: 10 - Vasily Khoruzhick <anarsoul@gmail.com> 11 - Yangtao Li <tiny.windzz@gmail.com> 12 13properties: 14 compatible: 15 enum: 16 - allwinner,sun8i-a83t-ths 17 - allwinner,sun8i-h3-ths 18 - allwinner,sun8i-r40-ths 19 - allwinner,sun20i-d1-ths 20 - allwinner,sun50i-a64-ths 21 - allwinner,sun50i-a100-ths 22 - allwinner,sun50i-h5-ths 23 - allwinner,sun50i-h6-ths 24 25 clocks: 26 minItems: 1 27 items: 28 - description: Bus Clock 29 - description: Module Clock 30 31 clock-names: 32 minItems: 1 33 items: 34 - const: bus 35 - const: mod 36 37 reg: 38 maxItems: 1 39 40 interrupts: 41 maxItems: 1 42 43 resets: 44 maxItems: 1 45 46 nvmem-cells: 47 maxItems: 1 48 description: Calibration data for thermal sensors 49 50 nvmem-cell-names: 51 const: calibration 52 53 # See Documentation/devicetree/bindings/thermal/thermal-sensor.yaml for details 54 "#thermal-sensor-cells": 55 enum: 56 - 0 57 - 1 58 59allOf: 60 - if: 61 properties: 62 compatible: 63 contains: 64 enum: 65 - allwinner,sun20i-d1-ths 66 - allwinner,sun50i-a100-ths 67 - allwinner,sun50i-h6-ths 68 69 then: 70 properties: 71 clocks: 72 maxItems: 1 73 74 clock-names: 75 maxItems: 1 76 77 else: 78 properties: 79 clocks: 80 minItems: 2 81 82 clock-names: 83 minItems: 2 84 85 - if: 86 properties: 87 compatible: 88 contains: 89 enum: 90 - allwinner,sun8i-h3-ths 91 - allwinner,sun20i-d1-ths 92 93 then: 94 properties: 95 "#thermal-sensor-cells": 96 const: 0 97 98 else: 99 properties: 100 "#thermal-sensor-cells": 101 const: 1 102 103 - if: 104 properties: 105 compatible: 106 contains: 107 enum: 108 - allwinner,sun8i-h3-ths 109 - allwinner,sun8i-r40-ths 110 - allwinner,sun20i-d1-ths 111 - allwinner,sun50i-a64-ths 112 - allwinner,sun50i-a100-ths 113 - allwinner,sun50i-h5-ths 114 - allwinner,sun50i-h6-ths 115 116 then: 117 required: 118 - clocks 119 - clock-names 120 - resets 121 122required: 123 - compatible 124 - reg 125 - interrupts 126 - '#thermal-sensor-cells' 127 128additionalProperties: false 129 130examples: 131 - | 132 thermal-sensor@1f04000 { 133 compatible = "allwinner,sun8i-a83t-ths"; 134 reg = <0x01f04000 0x100>; 135 interrupts = <0 31 0>; 136 nvmem-cells = <&ths_calibration>; 137 nvmem-cell-names = "calibration"; 138 #thermal-sensor-cells = <1>; 139 }; 140 141 - | 142 thermal-sensor@1c25000 { 143 compatible = "allwinner,sun8i-h3-ths"; 144 reg = <0x01c25000 0x400>; 145 clocks = <&ccu 0>, <&ccu 1>; 146 clock-names = "bus", "mod"; 147 resets = <&ccu 2>; 148 interrupts = <0 31 0>; 149 nvmem-cells = <&ths_calibration>; 150 nvmem-cell-names = "calibration"; 151 #thermal-sensor-cells = <0>; 152 }; 153 154 - | 155 thermal-sensor@5070400 { 156 compatible = "allwinner,sun50i-h6-ths"; 157 reg = <0x05070400 0x100>; 158 clocks = <&ccu 0>; 159 clock-names = "bus"; 160 resets = <&ccu 2>; 161 interrupts = <0 15 0>; 162 nvmem-cells = <&ths_calibration>; 163 nvmem-cell-names = "calibration"; 164 #thermal-sensor-cells = <1>; 165 }; 166 167... 168