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