1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2020, Konrad Dybcio 4 */ 5 6#include <dt-bindings/iio/qcom,spmi-vadc.h> 7#include <dt-bindings/input/linux-event-codes.h> 8#include <dt-bindings/interrupt-controller/irq.h> 9#include <dt-bindings/spmi/spmi.h> 10#include <dt-bindings/thermal/thermal.h> 11 12/ { 13 thermal-zones { 14 pm660 { 15 polling-delay-passive = <250>; 16 polling-delay = <1000>; 17 18 thermal-sensors = <&pm660_temp>; 19 20 trips { 21 pm660_alert0: pm660-alert0 { 22 temperature = <95000>; 23 hysteresis = <2000>; 24 type = "passive"; 25 }; 26 pm660_crit: pm660-crit { 27 temperature = <125000>; 28 hysteresis = <2000>; 29 type = "critical"; 30 }; 31 }; 32 }; 33 }; 34}; 35 36&spmi_bus { 37 38 pmic@0 { 39 compatible = "qcom,pm660", "qcom,spmi-pmic"; 40 reg = <0x0 SPMI_USID>; 41 #address-cells = <1>; 42 #size-cells = <0>; 43 44 rtc@6000 { 45 compatible = "qcom,pm8941-rtc"; 46 reg = <0x6000>, <0x6100>; 47 reg-names = "rtc", "alarm"; 48 interrupts = <0x0 0x61 0x1 IRQ_TYPE_EDGE_RISING>; 49 }; 50 51 pon: pon@800 { 52 compatible = "qcom,pm8916-pon"; 53 54 reg = <0x800>; 55 56 pwrkey { 57 compatible = "qcom,pm8941-pwrkey"; 58 interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>; 59 debounce = <15625>; 60 bias-pull-up; 61 linux,code = <KEY_POWER>; 62 }; 63 64 }; 65 66 pm660_temp: temp-alarm@2400 { 67 compatible = "qcom,spmi-temp-alarm"; 68 reg = <0x2400>; 69 interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>; 70 io-channels = <&pm660_adc ADC5_DIE_TEMP>; 71 io-channel-names = "thermal"; 72 #thermal-sensor-cells = <0>; 73 }; 74 75 pm660_adc: adc@3100 { 76 compatible = "qcom,spmi-adc-rev2"; 77 reg = <0x3100>; 78 interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 79 #address-cells = <1>; 80 #size-cells = <0>; 81 #io-channel-cells = <1>; 82 83 ref_gnd: ref_gnd@0 { 84 reg = <ADC5_REF_GND>; 85 qcom,decimation = <1024>; 86 qcom,pre-scaling = <1 1>; 87 }; 88 89 vref_1p25: vref_1p25@1 { 90 reg = <ADC5_1P25VREF>; 91 qcom,decimation = <1024>; 92 qcom,pre-scaling = <1 1>; 93 }; 94 95 die_temp: die_temp@6 { 96 reg = <ADC5_DIE_TEMP>; 97 qcom,decimation = <1024>; 98 qcom,pre-scaling = <1 1>; 99 }; 100 101 xo_therm: xo_therm@4c { 102 reg = <ADC5_XO_THERM_100K_PU>; 103 qcom,pre-scaling = <1 1>; 104 qcom,decimation = <1024>; 105 qcom,hw-settle-time = <200>; 106 qcom,ratiometric; 107 }; 108 109 msm_therm: msm_therm@4d { 110 reg = <ADC5_AMUX_THM1_100K_PU>; 111 qcom,pre-scaling = <1 1>; 112 qcom,decimation = <1024>; 113 qcom,hw-settle-time = <200>; 114 qcom,ratiometric; 115 }; 116 117 emmc_therm: emmc_therm@4e { 118 reg = <ADC5_AMUX_THM2_100K_PU>; 119 qcom,pre-scaling = <1 1>; 120 qcom,decimation = <1024>; 121 qcom,hw-settle-time = <200>; 122 qcom,ratiometric; 123 }; 124 125 pa_therm0: thermistor0@4f { 126 reg = <ADC5_AMUX_THM3_100K_PU>; 127 qcom,pre-scaling = <1 1>; 128 qcom,decimation = <1024>; 129 qcom,hw-settle-time = <200>; 130 qcom,ratiometric; 131 }; 132 133 pa_therm1: thermistor1@50 { 134 reg = <ADC5_AMUX_THM4_100K_PU>; 135 qcom,pre-scaling = <1 1>; 136 qcom,decimation = <1024>; 137 qcom,hw-settle-time = <200>; 138 qcom,ratiometric; 139 }; 140 141 quiet_therm: quiet_therm@51 { 142 reg = <ADC5_AMUX_THM5_100K_PU>; 143 qcom,pre-scaling = <1 1>; 144 qcom,decimation = <1024>; 145 qcom,hw-settle-time = <200>; 146 qcom,ratiometric; 147 }; 148 149 vadc_vph_pwr: vph_pwr@83 { 150 reg = <ADC5_VPH_PWR>; 151 qcom,decimation = <1024>; 152 qcom,pre-scaling = <1 3>; 153 }; 154 155 vcoin: vcoin@83 { 156 reg = <ADC5_VCOIN>; 157 qcom,decimation = <1024>; 158 qcom,pre-scaling = <1 3>; 159 }; 160 }; 161 162 pm660_gpios: gpios@c000 { 163 compatible = "qcom,pm660-gpio"; 164 reg = <0xc000>; 165 gpio-controller; 166 gpio-ranges = <&pm660_gpios 0 0 13>; 167 #gpio-cells = <2>; 168 interrupt-controller; 169 #interrupt-cells = <2>; 170 }; 171 }; 172 173 pmic@1 { 174 compatible = "qcom,pm660", "qcom,spmi-pmic"; 175 reg = <0x1 SPMI_USID>; 176 #address-cells = <1>; 177 #size-cells = <0>; 178 179 pm660_spmi_regulators: pm660-regulators { 180 compatible = "qcom,pm660-regulators"; 181 }; 182 }; 183}; 184