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,pm8998-pon"; 53 reg = <0x800>; 54 mode-bootloader = <0x2>; 55 mode-recovery = <0x1>; 56 57 pwrkey { 58 compatible = "qcom,pm8941-pwrkey"; 59 interrupts = <0x0 0x8 0 IRQ_TYPE_EDGE_BOTH>; 60 debounce = <15625>; 61 bias-pull-up; 62 linux,code = <KEY_POWER>; 63 }; 64 65 }; 66 67 pm660_temp: temp-alarm@2400 { 68 compatible = "qcom,spmi-temp-alarm"; 69 reg = <0x2400>; 70 interrupts = <0x0 0x24 0x0 IRQ_TYPE_EDGE_RISING>; 71 io-channels = <&pm660_adc ADC5_DIE_TEMP>; 72 io-channel-names = "thermal"; 73 #thermal-sensor-cells = <0>; 74 }; 75 76 pm660_adc: adc@3100 { 77 compatible = "qcom,spmi-adc-rev2"; 78 reg = <0x3100>; 79 interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; 80 #address-cells = <1>; 81 #size-cells = <0>; 82 #io-channel-cells = <1>; 83 84 ref_gnd: ref_gnd@0 { 85 reg = <ADC5_REF_GND>; 86 qcom,decimation = <1024>; 87 qcom,pre-scaling = <1 1>; 88 }; 89 90 vref_1p25: vref_1p25@1 { 91 reg = <ADC5_1P25VREF>; 92 qcom,decimation = <1024>; 93 qcom,pre-scaling = <1 1>; 94 }; 95 96 die_temp: die_temp@6 { 97 reg = <ADC5_DIE_TEMP>; 98 qcom,decimation = <1024>; 99 qcom,pre-scaling = <1 1>; 100 }; 101 102 xo_therm: xo_therm@4c { 103 reg = <ADC5_XO_THERM_100K_PU>; 104 qcom,pre-scaling = <1 1>; 105 qcom,decimation = <1024>; 106 qcom,hw-settle-time = <200>; 107 qcom,ratiometric; 108 }; 109 110 msm_therm: msm_therm@4d { 111 reg = <ADC5_AMUX_THM1_100K_PU>; 112 qcom,pre-scaling = <1 1>; 113 qcom,decimation = <1024>; 114 qcom,hw-settle-time = <200>; 115 qcom,ratiometric; 116 }; 117 118 emmc_therm: emmc_therm@4e { 119 reg = <ADC5_AMUX_THM2_100K_PU>; 120 qcom,pre-scaling = <1 1>; 121 qcom,decimation = <1024>; 122 qcom,hw-settle-time = <200>; 123 qcom,ratiometric; 124 }; 125 126 pa_therm0: thermistor0@4f { 127 reg = <ADC5_AMUX_THM3_100K_PU>; 128 qcom,pre-scaling = <1 1>; 129 qcom,decimation = <1024>; 130 qcom,hw-settle-time = <200>; 131 qcom,ratiometric; 132 }; 133 134 pa_therm1: thermistor1@50 { 135 reg = <ADC5_AMUX_THM4_100K_PU>; 136 qcom,pre-scaling = <1 1>; 137 qcom,decimation = <1024>; 138 qcom,hw-settle-time = <200>; 139 qcom,ratiometric; 140 }; 141 142 quiet_therm: quiet_therm@51 { 143 reg = <ADC5_AMUX_THM5_100K_PU>; 144 qcom,pre-scaling = <1 1>; 145 qcom,decimation = <1024>; 146 qcom,hw-settle-time = <200>; 147 qcom,ratiometric; 148 }; 149 150 vadc_vph_pwr: vph_pwr@83 { 151 reg = <ADC5_VPH_PWR>; 152 qcom,decimation = <1024>; 153 qcom,pre-scaling = <1 3>; 154 }; 155 156 vcoin: vcoin@83 { 157 reg = <ADC5_VCOIN>; 158 qcom,decimation = <1024>; 159 qcom,pre-scaling = <1 3>; 160 }; 161 }; 162 163 pm660_gpios: gpios@c000 { 164 compatible = "qcom,pm660-gpio"; 165 reg = <0xc000>; 166 gpio-controller; 167 gpio-ranges = <&pm660_gpios 0 0 13>; 168 #gpio-cells = <2>; 169 interrupt-controller; 170 #interrupt-cells = <2>; 171 }; 172 }; 173 174 pmic@1 { 175 compatible = "qcom,pm660", "qcom,spmi-pmic"; 176 reg = <0x1 SPMI_USID>; 177 #address-cells = <1>; 178 #size-cells = <0>; 179 180 pm660_spmi_regulators: pm660-regulators { 181 compatible = "qcom,pm660-regulators"; 182 }; 183 }; 184}; 185