1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. 4 * Copyright (c) 2021-2023, Linaro Limited 5 */ 6 7#include <dt-bindings/input/input.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9#include <dt-bindings/spmi/spmi.h> 10#include <dt-bindings/iio/qcom,spmi-vadc.h> 11 12/ { 13 thermal-zones { 14 pmc8180-thermal { 15 polling-delay-passive = <100>; 16 17 thermal-sensors = <&pmc8180_temp>; 18 19 trips { 20 trip0 { 21 temperature = <95000>; 22 hysteresis = <0>; 23 type = "passive"; 24 }; 25 26 trip1 { 27 temperature = <115000>; 28 hysteresis = <0>; 29 type = "hot"; 30 }; 31 32 trip2 { 33 temperature = <145000>; 34 hysteresis = <0>; 35 type = "critical"; 36 }; 37 }; 38 }; 39 40 pmc8180c-thermal { 41 polling-delay-passive = <100>; 42 43 thermal-sensors = <&pmc8180c_temp>; 44 45 trips { 46 trip0 { 47 temperature = <95000>; 48 hysteresis = <0>; 49 type = "passive"; 50 }; 51 52 trip1 { 53 temperature = <115000>; 54 hysteresis = <0>; 55 type = "hot"; 56 }; 57 58 trip2 { 59 temperature = <145000>; 60 hysteresis = <0>; 61 type = "critical"; 62 }; 63 }; 64 }; 65 }; 66}; 67 68&spmi_bus { 69 pmc8180_0: pmic@0 { 70 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 71 reg = <0x0 SPMI_USID>; 72 #address-cells = <1>; 73 #size-cells = <0>; 74 75 pon: pon@800 { 76 compatible = "qcom,pm8916-pon"; 77 reg = <0x0800>; 78 pwrkey { 79 compatible = "qcom,pm8941-pwrkey"; 80 interrupts = <0x0 0x8 0x0 IRQ_TYPE_EDGE_BOTH>; 81 debounce = <15625>; 82 bias-pull-up; 83 linux,code = <KEY_POWER>; 84 85 status = "disabled"; 86 }; 87 }; 88 89 pmc8180_temp: temp-alarm@2400 { 90 compatible = "qcom,spmi-temp-alarm"; 91 reg = <0x2400>; 92 interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; 93 io-channels = <&pmc8180_adc ADC5_DIE_TEMP>; 94 io-channel-names = "thermal"; 95 #thermal-sensor-cells = <0>; 96 }; 97 98 pmc8180_adc: adc@3100 { 99 compatible = "qcom,spmi-adc5"; 100 reg = <0x3100>; 101 #address-cells = <1>; 102 #size-cells = <0>; 103 #io-channel-cells = <1>; 104 interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 105 106 channel@0 { 107 reg = <ADC5_REF_GND>; 108 qcom,pre-scaling = <1 1>; 109 label = "ref_gnd"; 110 }; 111 112 channel@1 { 113 reg = <ADC5_1P25VREF>; 114 qcom,pre-scaling = <1 1>; 115 label = "vref_1p25"; 116 }; 117 118 channel@6 { 119 reg = <ADC5_DIE_TEMP>; 120 qcom,pre-scaling = <1 1>; 121 label = "die_temp"; 122 }; 123 }; 124 125 pmc8180_adc_tm: adc-tm@3500 { 126 compatible = "qcom,spmi-adc-tm5"; 127 reg = <0x3500>; 128 interrupts = <0x0 0x35 0x0 IRQ_TYPE_EDGE_RISING>; 129 #thermal-sensor-cells = <1>; 130 #address-cells = <1>; 131 #size-cells = <0>; 132 status = "disabled"; 133 }; 134 135 rtc@6000 { 136 compatible = "qcom,pm8941-rtc"; 137 reg = <0x6000>; 138 reg-names = "rtc", "alarm"; 139 interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>; 140 }; 141 142 pmc8180_gpios: gpio@c000 { 143 compatible = "qcom,pmc8180-gpio", "qcom,spmi-gpio"; 144 reg = <0xc000>; 145 gpio-controller; 146 gpio-ranges = <&pmc8180_gpios 0 0 10>; 147 #gpio-cells = <2>; 148 interrupt-controller; 149 #interrupt-cells = <2>; 150 }; 151 }; 152 153 pmic@1 { 154 compatible = "qcom,pmc8180", "qcom,spmi-pmic"; 155 reg = <0x1 SPMI_USID>; 156 #address-cells = <1>; 157 #size-cells = <0>; 158 }; 159 160 pmic@2 { 161 compatible = "qcom,smb2351", "qcom,spmi-pmic"; 162 reg = <0x2 SPMI_USID>; 163 #address-cells = <1>; 164 #size-cells = <0>; 165 166 adc@3100 { 167 compatible = "qcom,spmi-adc-rev2"; 168 reg = <0x3100>; 169 #address-cells = <1>; 170 #size-cells = <0>; 171 #io-channel-cells = <1>; 172 interrupts = <0x2 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 173 174 channel@0 { 175 reg = <ADC5_REF_GND>; 176 qcom,pre-scaling = <1 1>; 177 label = "ref_gnd"; 178 }; 179 180 channel@1 { 181 reg = <ADC5_1P25VREF>; 182 qcom,pre-scaling = <1 1>; 183 label = "vref_1p25"; 184 }; 185 186 channel@85 { 187 reg = <0x85>; 188 qcom,pre-scaling = <1 1>; 189 label = "vcoin2"; 190 }; 191 }; 192 }; 193 194 pmic@6 { 195 compatible = "qcom,pm8150c", "qcom,spmi-pmic"; 196 reg = <0x6 SPMI_USID>; 197 #address-cells = <1>; 198 #size-cells = <0>; 199 }; 200 201 pmic@8 { 202 compatible = "qcom,pm8150", "qcom,spmi-pmic"; 203 reg = <0x8 SPMI_USID>; 204 #address-cells = <1>; 205 #size-cells = <0>; 206 }; 207 208 pmic@a { 209 compatible = "qcom,smb2351", "qcom,spmi-pmic"; 210 reg = <0xa SPMI_USID>; 211 #address-cells = <1>; 212 #size-cells = <0>; 213 214 adc@3100 { 215 compatible = "qcom,spmi-adc-rev2"; 216 reg = <0x3100>; 217 #address-cells = <1>; 218 #size-cells = <0>; 219 #io-channel-cells = <1>; 220 interrupts = <0xa 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 221 222 channel@0 { 223 reg = <ADC5_REF_GND>; 224 qcom,pre-scaling = <1 1>; 225 label = "ref_gnd"; 226 }; 227 228 channel@1 { 229 reg = <ADC5_1P25VREF>; 230 qcom,pre-scaling = <1 1>; 231 label = "vref_1p25"; 232 }; 233 234 channel@85 { 235 reg = <0x85>; 236 qcom,pre-scaling = <1 1>; 237 label = "vcoin"; 238 }; 239 }; 240 }; 241 242 pmic@4 { 243 compatible = "qcom,pm8150c", "qcom,spmi-pmic"; 244 reg = <0x4 SPMI_USID>; 245 #address-cells = <1>; 246 #size-cells = <0>; 247 248 pon@800 { 249 compatible = "qcom,pm8916-pon"; 250 reg = <0x0800>; 251 252 status = "disabled"; 253 }; 254 255 pmc8180c_temp: temp-alarm@2400 { 256 compatible = "qcom,spmi-temp-alarm"; 257 reg = <0x2400>; 258 interrupts = <0x4 0x24 0x0 IRQ_TYPE_EDGE_BOTH>; 259 io-channels = <&pmc8180c_adc ADC5_DIE_TEMP>; 260 io-channel-names = "thermal"; 261 #thermal-sensor-cells = <0>; 262 }; 263 264 pmc8180c_adc: adc@3100 { 265 compatible = "qcom,spmi-adc5"; 266 reg = <0x3100>; 267 #address-cells = <1>; 268 #size-cells = <0>; 269 #io-channel-cells = <1>; 270 interrupts = <0x4 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 271 272 channel@0 { 273 reg = <ADC5_REF_GND>; 274 qcom,pre-scaling = <1 1>; 275 label = "ref_gnd"; 276 }; 277 278 channel@1 { 279 reg = <ADC5_1P25VREF>; 280 qcom,pre-scaling = <1 1>; 281 label = "vref_1p25"; 282 }; 283 284 channel@6 { 285 reg = <ADC5_DIE_TEMP>; 286 qcom,pre-scaling = <1 1>; 287 label = "die_temp"; 288 }; 289 }; 290 291 pmc8180c_adc_tm: adc-tm@3500 { 292 compatible = "qcom,spmi-adc-tm5"; 293 reg = <0x3500>; 294 interrupts = <0x4 0x35 0x0 IRQ_TYPE_EDGE_RISING>; 295 #thermal-sensor-cells = <1>; 296 #address-cells = <1>; 297 #size-cells = <0>; 298 status = "disabled"; 299 }; 300 301 pmc8180c_gpios: gpio@c000 { 302 compatible = "qcom,pmc8180c-gpio", "qcom,spmi-gpio"; 303 reg = <0xc000>; 304 gpio-controller; 305 gpio-ranges = <&pmc8180c_gpios 0 0 12>; 306 #gpio-cells = <2>; 307 interrupt-controller; 308 #interrupt-cells = <2>; 309 }; 310 }; 311 312 pmic@5 { 313 compatible = "qcom,pmc8180c", "qcom,spmi-pmic"; 314 reg = <0x5 SPMI_USID>; 315 316 pmc8180c_lpg: pwm { 317 compatible = "qcom,pmc8180c-lpg"; 318 319 #address-cells = <1>; 320 #size-cells = <0>; 321 #pwm-cells = <2>; 322 323 status = "disabled"; 324 }; 325 }; 326}; 327