xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/hamoa-pmics.dtsi (revision 96fb1ebd28756790597f73ad25306f58f558be97)
1*96fb1ebdSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2*96fb1ebdSEmmanuel Vadot/*
3*96fb1ebdSEmmanuel Vadot * Copyright (c) 2024, Linaro Limited
4*96fb1ebdSEmmanuel Vadot */
5*96fb1ebdSEmmanuel Vadot
6*96fb1ebdSEmmanuel Vadot#include <dt-bindings/input/input.h>
7*96fb1ebdSEmmanuel Vadot#include <dt-bindings/input/linux-event-codes.h>
8*96fb1ebdSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
9*96fb1ebdSEmmanuel Vadot#include <dt-bindings/spmi/spmi.h>
10*96fb1ebdSEmmanuel Vadot
11*96fb1ebdSEmmanuel Vadot/ {
12*96fb1ebdSEmmanuel Vadot	thermal-zones {
13*96fb1ebdSEmmanuel Vadot		pm8550-thermal {
14*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
15*96fb1ebdSEmmanuel Vadot
16*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pm8550_temp_alarm>;
17*96fb1ebdSEmmanuel Vadot
18*96fb1ebdSEmmanuel Vadot			trips {
19*96fb1ebdSEmmanuel Vadot				trip0 {
20*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
21*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
22*96fb1ebdSEmmanuel Vadot					type = "passive";
23*96fb1ebdSEmmanuel Vadot				};
24*96fb1ebdSEmmanuel Vadot
25*96fb1ebdSEmmanuel Vadot				trip1 {
26*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
27*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
28*96fb1ebdSEmmanuel Vadot					type = "hot";
29*96fb1ebdSEmmanuel Vadot				};
30*96fb1ebdSEmmanuel Vadot			};
31*96fb1ebdSEmmanuel Vadot		};
32*96fb1ebdSEmmanuel Vadot
33*96fb1ebdSEmmanuel Vadot		pm8550ve-2-thermal {
34*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
35*96fb1ebdSEmmanuel Vadot
36*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pm8550ve_2_temp_alarm>;
37*96fb1ebdSEmmanuel Vadot
38*96fb1ebdSEmmanuel Vadot			trips {
39*96fb1ebdSEmmanuel Vadot				trip0 {
40*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
41*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
42*96fb1ebdSEmmanuel Vadot					type = "passive";
43*96fb1ebdSEmmanuel Vadot				};
44*96fb1ebdSEmmanuel Vadot
45*96fb1ebdSEmmanuel Vadot				trip1 {
46*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
47*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
48*96fb1ebdSEmmanuel Vadot					type = "hot";
49*96fb1ebdSEmmanuel Vadot				};
50*96fb1ebdSEmmanuel Vadot			};
51*96fb1ebdSEmmanuel Vadot		};
52*96fb1ebdSEmmanuel Vadot
53*96fb1ebdSEmmanuel Vadot		pmc8380-3-thermal {
54*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
55*96fb1ebdSEmmanuel Vadot
56*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pmc8380_3_temp_alarm>;
57*96fb1ebdSEmmanuel Vadot
58*96fb1ebdSEmmanuel Vadot			trips {
59*96fb1ebdSEmmanuel Vadot				trip0 {
60*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
61*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
62*96fb1ebdSEmmanuel Vadot					type = "passive";
63*96fb1ebdSEmmanuel Vadot				};
64*96fb1ebdSEmmanuel Vadot
65*96fb1ebdSEmmanuel Vadot				trip1 {
66*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
67*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
68*96fb1ebdSEmmanuel Vadot					type = "hot";
69*96fb1ebdSEmmanuel Vadot				};
70*96fb1ebdSEmmanuel Vadot			};
71*96fb1ebdSEmmanuel Vadot		};
72*96fb1ebdSEmmanuel Vadot
73*96fb1ebdSEmmanuel Vadot		pmc8380-4-thermal {
74*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
75*96fb1ebdSEmmanuel Vadot
76*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pmc8380_4_temp_alarm>;
77*96fb1ebdSEmmanuel Vadot
78*96fb1ebdSEmmanuel Vadot			trips {
79*96fb1ebdSEmmanuel Vadot				trip0 {
80*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
81*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
82*96fb1ebdSEmmanuel Vadot					type = "passive";
83*96fb1ebdSEmmanuel Vadot				};
84*96fb1ebdSEmmanuel Vadot
85*96fb1ebdSEmmanuel Vadot				trip1 {
86*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
87*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
88*96fb1ebdSEmmanuel Vadot					type = "hot";
89*96fb1ebdSEmmanuel Vadot				};
90*96fb1ebdSEmmanuel Vadot			};
91*96fb1ebdSEmmanuel Vadot		};
92*96fb1ebdSEmmanuel Vadot
93*96fb1ebdSEmmanuel Vadot		pmc8380-5-thermal {
94*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
95*96fb1ebdSEmmanuel Vadot
96*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pmc8380_5_temp_alarm>;
97*96fb1ebdSEmmanuel Vadot
98*96fb1ebdSEmmanuel Vadot			trips {
99*96fb1ebdSEmmanuel Vadot				trip0 {
100*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
101*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
102*96fb1ebdSEmmanuel Vadot					type = "passive";
103*96fb1ebdSEmmanuel Vadot				};
104*96fb1ebdSEmmanuel Vadot
105*96fb1ebdSEmmanuel Vadot				trip1 {
106*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
107*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
108*96fb1ebdSEmmanuel Vadot					type = "hot";
109*96fb1ebdSEmmanuel Vadot				};
110*96fb1ebdSEmmanuel Vadot			};
111*96fb1ebdSEmmanuel Vadot		};
112*96fb1ebdSEmmanuel Vadot
113*96fb1ebdSEmmanuel Vadot		pmc8380_6_thermal: pmc8380-6-thermal {
114*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
115*96fb1ebdSEmmanuel Vadot
116*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pmc8380_6_temp_alarm>;
117*96fb1ebdSEmmanuel Vadot
118*96fb1ebdSEmmanuel Vadot			trips {
119*96fb1ebdSEmmanuel Vadot				trip0 {
120*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
121*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
122*96fb1ebdSEmmanuel Vadot					type = "passive";
123*96fb1ebdSEmmanuel Vadot				};
124*96fb1ebdSEmmanuel Vadot
125*96fb1ebdSEmmanuel Vadot				trip1 {
126*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
127*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
128*96fb1ebdSEmmanuel Vadot					type = "hot";
129*96fb1ebdSEmmanuel Vadot				};
130*96fb1ebdSEmmanuel Vadot			};
131*96fb1ebdSEmmanuel Vadot		};
132*96fb1ebdSEmmanuel Vadot
133*96fb1ebdSEmmanuel Vadot		pm8550ve-8-thermal {
134*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
135*96fb1ebdSEmmanuel Vadot
136*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pm8550ve_8_temp_alarm>;
137*96fb1ebdSEmmanuel Vadot
138*96fb1ebdSEmmanuel Vadot			trips {
139*96fb1ebdSEmmanuel Vadot				trip0 {
140*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
141*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
142*96fb1ebdSEmmanuel Vadot					type = "passive";
143*96fb1ebdSEmmanuel Vadot				};
144*96fb1ebdSEmmanuel Vadot
145*96fb1ebdSEmmanuel Vadot				trip1 {
146*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
147*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
148*96fb1ebdSEmmanuel Vadot					type = "hot";
149*96fb1ebdSEmmanuel Vadot				};
150*96fb1ebdSEmmanuel Vadot			};
151*96fb1ebdSEmmanuel Vadot		};
152*96fb1ebdSEmmanuel Vadot
153*96fb1ebdSEmmanuel Vadot		pm8550ve-9-thermal {
154*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
155*96fb1ebdSEmmanuel Vadot
156*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pm8550ve_9_temp_alarm>;
157*96fb1ebdSEmmanuel Vadot
158*96fb1ebdSEmmanuel Vadot			trips {
159*96fb1ebdSEmmanuel Vadot				trip0 {
160*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
161*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
162*96fb1ebdSEmmanuel Vadot					type = "passive";
163*96fb1ebdSEmmanuel Vadot				};
164*96fb1ebdSEmmanuel Vadot
165*96fb1ebdSEmmanuel Vadot				trip1 {
166*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
167*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
168*96fb1ebdSEmmanuel Vadot					type = "hot";
169*96fb1ebdSEmmanuel Vadot				};
170*96fb1ebdSEmmanuel Vadot			};
171*96fb1ebdSEmmanuel Vadot		};
172*96fb1ebdSEmmanuel Vadot
173*96fb1ebdSEmmanuel Vadot		pm8010-thermal {
174*96fb1ebdSEmmanuel Vadot			polling-delay-passive = <100>;
175*96fb1ebdSEmmanuel Vadot
176*96fb1ebdSEmmanuel Vadot			thermal-sensors = <&pm8010_temp_alarm>;
177*96fb1ebdSEmmanuel Vadot
178*96fb1ebdSEmmanuel Vadot			trips {
179*96fb1ebdSEmmanuel Vadot				trip0 {
180*96fb1ebdSEmmanuel Vadot					temperature = <95000>;
181*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
182*96fb1ebdSEmmanuel Vadot					type = "passive";
183*96fb1ebdSEmmanuel Vadot				};
184*96fb1ebdSEmmanuel Vadot
185*96fb1ebdSEmmanuel Vadot				trip1 {
186*96fb1ebdSEmmanuel Vadot					temperature = <115000>;
187*96fb1ebdSEmmanuel Vadot					hysteresis = <0>;
188*96fb1ebdSEmmanuel Vadot					type = "hot";
189*96fb1ebdSEmmanuel Vadot				};
190*96fb1ebdSEmmanuel Vadot			};
191*96fb1ebdSEmmanuel Vadot		};
192*96fb1ebdSEmmanuel Vadot	};
193*96fb1ebdSEmmanuel Vadot};
194*96fb1ebdSEmmanuel Vadot
195*96fb1ebdSEmmanuel Vadot&spmi_bus0 {
196*96fb1ebdSEmmanuel Vadot	/* PMK8380 */
197*96fb1ebdSEmmanuel Vadot	pmk8550: pmic@0 {
198*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8550", "qcom,spmi-pmic";
199*96fb1ebdSEmmanuel Vadot		reg = <0x0 SPMI_USID>;
200*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
201*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
202*96fb1ebdSEmmanuel Vadot
203*96fb1ebdSEmmanuel Vadot		pmk8550_pon: pon@1300 {
204*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmk8350-pon";
205*96fb1ebdSEmmanuel Vadot			reg = <0x1300>, <0x800>;
206*96fb1ebdSEmmanuel Vadot			reg-names = "hlos", "pbs";
207*96fb1ebdSEmmanuel Vadot
208*96fb1ebdSEmmanuel Vadot			pon_pwrkey: pwrkey {
209*96fb1ebdSEmmanuel Vadot				compatible = "qcom,pmk8350-pwrkey";
210*96fb1ebdSEmmanuel Vadot				interrupts = <0x0 0x13 0x7 IRQ_TYPE_EDGE_BOTH>;
211*96fb1ebdSEmmanuel Vadot				linux,code = <KEY_POWER>;
212*96fb1ebdSEmmanuel Vadot			};
213*96fb1ebdSEmmanuel Vadot
214*96fb1ebdSEmmanuel Vadot			pon_resin: resin {
215*96fb1ebdSEmmanuel Vadot				compatible = "qcom,pmk8350-resin";
216*96fb1ebdSEmmanuel Vadot				interrupts = <0x0 0x13 0x6 IRQ_TYPE_EDGE_BOTH>;
217*96fb1ebdSEmmanuel Vadot				status = "disabled";
218*96fb1ebdSEmmanuel Vadot			};
219*96fb1ebdSEmmanuel Vadot		};
220*96fb1ebdSEmmanuel Vadot
221*96fb1ebdSEmmanuel Vadot		pmk8550_rtc: rtc@6100 {
222*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmk8350-rtc";
223*96fb1ebdSEmmanuel Vadot			reg = <0x6100>, <0x6200>;
224*96fb1ebdSEmmanuel Vadot			reg-names = "rtc", "alarm";
225*96fb1ebdSEmmanuel Vadot			interrupts = <0x0 0x62 0x1 IRQ_TYPE_EDGE_RISING>;
226*96fb1ebdSEmmanuel Vadot			qcom,no-alarm; /* alarm owned by ADSP */
227*96fb1ebdSEmmanuel Vadot			qcom,uefi-rtc-info;
228*96fb1ebdSEmmanuel Vadot		};
229*96fb1ebdSEmmanuel Vadot
230*96fb1ebdSEmmanuel Vadot		pmk8550_sdam_2: nvram@7100 {
231*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-sdam";
232*96fb1ebdSEmmanuel Vadot			reg = <0x7100>;
233*96fb1ebdSEmmanuel Vadot			#address-cells = <1>;
234*96fb1ebdSEmmanuel Vadot			#size-cells = <1>;
235*96fb1ebdSEmmanuel Vadot			ranges = <0 0x7100 0x100>;
236*96fb1ebdSEmmanuel Vadot
237*96fb1ebdSEmmanuel Vadot			reboot_reason: reboot-reason@48 {
238*96fb1ebdSEmmanuel Vadot				reg = <0x48 0x1>;
239*96fb1ebdSEmmanuel Vadot				bits = <1 7>;
240*96fb1ebdSEmmanuel Vadot			};
241*96fb1ebdSEmmanuel Vadot		};
242*96fb1ebdSEmmanuel Vadot
243*96fb1ebdSEmmanuel Vadot		pmk8550_sdam_15: nvram@7e00 {
244*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-sdam";
245*96fb1ebdSEmmanuel Vadot			reg = <0x7e00>;
246*96fb1ebdSEmmanuel Vadot			#address-cells = <1>;
247*96fb1ebdSEmmanuel Vadot			#size-cells = <1>;
248*96fb1ebdSEmmanuel Vadot			ranges = <0 0x7e00 0x100>;
249*96fb1ebdSEmmanuel Vadot
250*96fb1ebdSEmmanuel Vadot			charge_limit_en: charge-limit-en@73 {
251*96fb1ebdSEmmanuel Vadot				reg = <0x73 0x1>;
252*96fb1ebdSEmmanuel Vadot			};
253*96fb1ebdSEmmanuel Vadot
254*96fb1ebdSEmmanuel Vadot			charge_limit_end: charge-limit-end@75 {
255*96fb1ebdSEmmanuel Vadot				reg = <0x75 0x1>;
256*96fb1ebdSEmmanuel Vadot			};
257*96fb1ebdSEmmanuel Vadot
258*96fb1ebdSEmmanuel Vadot			charge_limit_delta: charge-limit-delta@76 {
259*96fb1ebdSEmmanuel Vadot				reg = <0x76 0x1>;
260*96fb1ebdSEmmanuel Vadot			};
261*96fb1ebdSEmmanuel Vadot		};
262*96fb1ebdSEmmanuel Vadot
263*96fb1ebdSEmmanuel Vadot		pmk8550_gpios: gpio@8800 {
264*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmk8550-gpio", "qcom,spmi-gpio";
265*96fb1ebdSEmmanuel Vadot			reg = <0xb800>;
266*96fb1ebdSEmmanuel Vadot			gpio-controller;
267*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pmk8550_gpios 0 0 6>;
268*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
269*96fb1ebdSEmmanuel Vadot			interrupt-controller;
270*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
271*96fb1ebdSEmmanuel Vadot		};
272*96fb1ebdSEmmanuel Vadot
273*96fb1ebdSEmmanuel Vadot		pmk8550_pwm: pwm {
274*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmk8550-pwm";
275*96fb1ebdSEmmanuel Vadot
276*96fb1ebdSEmmanuel Vadot			#pwm-cells = <2>;
277*96fb1ebdSEmmanuel Vadot
278*96fb1ebdSEmmanuel Vadot			status = "disabled";
279*96fb1ebdSEmmanuel Vadot		};
280*96fb1ebdSEmmanuel Vadot	};
281*96fb1ebdSEmmanuel Vadot
282*96fb1ebdSEmmanuel Vadot	/* PMC8380C */
283*96fb1ebdSEmmanuel Vadot	pm8550: pmic@1 {
284*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8550", "qcom,spmi-pmic";
285*96fb1ebdSEmmanuel Vadot		reg = <0x1 SPMI_USID>;
286*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
287*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
288*96fb1ebdSEmmanuel Vadot
289*96fb1ebdSEmmanuel Vadot		pm8550_temp_alarm: temp-alarm@a00 {
290*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
291*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
292*96fb1ebdSEmmanuel Vadot			interrupts = <0x1 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
293*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
294*96fb1ebdSEmmanuel Vadot		};
295*96fb1ebdSEmmanuel Vadot
296*96fb1ebdSEmmanuel Vadot		pm8550_gpios: gpio@8800 {
297*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550-gpio", "qcom,spmi-gpio";
298*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
299*96fb1ebdSEmmanuel Vadot			gpio-controller;
300*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pm8550_gpios 0 0 12>;
301*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
302*96fb1ebdSEmmanuel Vadot			interrupt-controller;
303*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
304*96fb1ebdSEmmanuel Vadot		};
305*96fb1ebdSEmmanuel Vadot
306*96fb1ebdSEmmanuel Vadot		pm8550_flash: led-controller@ee00 {
307*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550-flash-led", "qcom,spmi-flash-led";
308*96fb1ebdSEmmanuel Vadot			reg = <0xee00>;
309*96fb1ebdSEmmanuel Vadot			status = "disabled";
310*96fb1ebdSEmmanuel Vadot		};
311*96fb1ebdSEmmanuel Vadot
312*96fb1ebdSEmmanuel Vadot		pm8550_pwm: pwm {
313*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550-pwm", "qcom,pm8350c-pwm";
314*96fb1ebdSEmmanuel Vadot			#pwm-cells = <2>;
315*96fb1ebdSEmmanuel Vadot
316*96fb1ebdSEmmanuel Vadot			status = "disabled";
317*96fb1ebdSEmmanuel Vadot		};
318*96fb1ebdSEmmanuel Vadot	};
319*96fb1ebdSEmmanuel Vadot
320*96fb1ebdSEmmanuel Vadot	/* PMC8380VE */
321*96fb1ebdSEmmanuel Vadot	pm8550ve_2: pmic@2 {
322*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8550", "qcom,spmi-pmic";
323*96fb1ebdSEmmanuel Vadot		reg = <0x2 SPMI_USID>;
324*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
325*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
326*96fb1ebdSEmmanuel Vadot
327*96fb1ebdSEmmanuel Vadot		pm8550ve_2_temp_alarm: temp-alarm@a00 {
328*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
329*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
330*96fb1ebdSEmmanuel Vadot			interrupts = <0x2 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
331*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
332*96fb1ebdSEmmanuel Vadot		};
333*96fb1ebdSEmmanuel Vadot
334*96fb1ebdSEmmanuel Vadot		pm8550ve_2_gpios: gpio@8800 {
335*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
336*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
337*96fb1ebdSEmmanuel Vadot			gpio-controller;
338*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pm8550ve_2_gpios 0 0 8>;
339*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
340*96fb1ebdSEmmanuel Vadot			interrupt-controller;
341*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
342*96fb1ebdSEmmanuel Vadot		};
343*96fb1ebdSEmmanuel Vadot	};
344*96fb1ebdSEmmanuel Vadot
345*96fb1ebdSEmmanuel Vadot	/* PMC8380 is actually not a PM8550 series rebrand */
346*96fb1ebdSEmmanuel Vadot	pmc8380_3: pmic@3 {
347*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pmc8380", "qcom,spmi-pmic";
348*96fb1ebdSEmmanuel Vadot		reg = <0x3 SPMI_USID>;
349*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
350*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
351*96fb1ebdSEmmanuel Vadot
352*96fb1ebdSEmmanuel Vadot		pmc8380_3_temp_alarm: temp-alarm@a00 {
353*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
354*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
355*96fb1ebdSEmmanuel Vadot			interrupts = <0x3 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
356*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
357*96fb1ebdSEmmanuel Vadot		};
358*96fb1ebdSEmmanuel Vadot
359*96fb1ebdSEmmanuel Vadot		pmc8380_3_gpios: gpio@8800 {
360*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmc8380-gpio", "qcom,spmi-gpio";
361*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
362*96fb1ebdSEmmanuel Vadot			gpio-controller;
363*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pmc8380_3_gpios 0 0 10>;
364*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
365*96fb1ebdSEmmanuel Vadot			interrupt-controller;
366*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
367*96fb1ebdSEmmanuel Vadot		};
368*96fb1ebdSEmmanuel Vadot	};
369*96fb1ebdSEmmanuel Vadot
370*96fb1ebdSEmmanuel Vadot	pmc8380_4: pmic@4 {
371*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pmc8380", "qcom,spmi-pmic";
372*96fb1ebdSEmmanuel Vadot		reg = <0x4 SPMI_USID>;
373*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
374*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
375*96fb1ebdSEmmanuel Vadot
376*96fb1ebdSEmmanuel Vadot		pmc8380_4_temp_alarm: temp-alarm@a00 {
377*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
378*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
379*96fb1ebdSEmmanuel Vadot			interrupts = <0x4 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
380*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
381*96fb1ebdSEmmanuel Vadot		};
382*96fb1ebdSEmmanuel Vadot
383*96fb1ebdSEmmanuel Vadot		pmc8380_4_gpios: gpio@8800 {
384*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmc8380-gpio", "qcom,spmi-gpio";
385*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
386*96fb1ebdSEmmanuel Vadot			gpio-controller;
387*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pmc8380_4_gpios 0 0 10>;
388*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
389*96fb1ebdSEmmanuel Vadot			interrupt-controller;
390*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
391*96fb1ebdSEmmanuel Vadot		};
392*96fb1ebdSEmmanuel Vadot	};
393*96fb1ebdSEmmanuel Vadot
394*96fb1ebdSEmmanuel Vadot	pmc8380_5: pmic@5 {
395*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pmc8380", "qcom,spmi-pmic";
396*96fb1ebdSEmmanuel Vadot		reg = <0x5 SPMI_USID>;
397*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
398*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
399*96fb1ebdSEmmanuel Vadot
400*96fb1ebdSEmmanuel Vadot		pmc8380_5_temp_alarm: temp-alarm@a00 {
401*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
402*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
403*96fb1ebdSEmmanuel Vadot			interrupts = <0x5 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
404*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
405*96fb1ebdSEmmanuel Vadot		};
406*96fb1ebdSEmmanuel Vadot
407*96fb1ebdSEmmanuel Vadot		pmc8380_5_gpios: gpio@8800 {
408*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmc8380-gpio", "qcom,spmi-gpio";
409*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
410*96fb1ebdSEmmanuel Vadot			gpio-controller;
411*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pmc8380_5_gpios 0 0 10>;
412*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
413*96fb1ebdSEmmanuel Vadot			interrupt-controller;
414*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
415*96fb1ebdSEmmanuel Vadot		};
416*96fb1ebdSEmmanuel Vadot	};
417*96fb1ebdSEmmanuel Vadot
418*96fb1ebdSEmmanuel Vadot	pmc8380_6: pmic@6 {
419*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pmc8380", "qcom,spmi-pmic";
420*96fb1ebdSEmmanuel Vadot		reg = <0x6 SPMI_USID>;
421*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
422*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
423*96fb1ebdSEmmanuel Vadot
424*96fb1ebdSEmmanuel Vadot		pmc8380_6_temp_alarm: temp-alarm@a00 {
425*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
426*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
427*96fb1ebdSEmmanuel Vadot			interrupts = <0x6 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
428*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
429*96fb1ebdSEmmanuel Vadot		};
430*96fb1ebdSEmmanuel Vadot
431*96fb1ebdSEmmanuel Vadot		pmc8380_6_gpios: gpio@8800 {
432*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pmc8380-gpio", "qcom,spmi-gpio";
433*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
434*96fb1ebdSEmmanuel Vadot			gpio-controller;
435*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pmc8380_6_gpios 0 0 10>;
436*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
437*96fb1ebdSEmmanuel Vadot			interrupt-controller;
438*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
439*96fb1ebdSEmmanuel Vadot		};
440*96fb1ebdSEmmanuel Vadot	};
441*96fb1ebdSEmmanuel Vadot
442*96fb1ebdSEmmanuel Vadot	/* PMC8380VE */
443*96fb1ebdSEmmanuel Vadot	pm8550ve_8: pmic@8 {
444*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8550", "qcom,spmi-pmic";
445*96fb1ebdSEmmanuel Vadot		reg = <0x8 SPMI_USID>;
446*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
447*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
448*96fb1ebdSEmmanuel Vadot
449*96fb1ebdSEmmanuel Vadot		pm8550ve_8_temp_alarm: temp-alarm@a00 {
450*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
451*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
452*96fb1ebdSEmmanuel Vadot			interrupts = <0x8 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
453*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
454*96fb1ebdSEmmanuel Vadot		};
455*96fb1ebdSEmmanuel Vadot
456*96fb1ebdSEmmanuel Vadot		pm8550ve_8_gpios: gpio@8800 {
457*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
458*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
459*96fb1ebdSEmmanuel Vadot			gpio-controller;
460*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pm8550ve_8_gpios 0 0 8>;
461*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
462*96fb1ebdSEmmanuel Vadot			interrupt-controller;
463*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
464*96fb1ebdSEmmanuel Vadot		};
465*96fb1ebdSEmmanuel Vadot	};
466*96fb1ebdSEmmanuel Vadot
467*96fb1ebdSEmmanuel Vadot	/* PMC8380VE */
468*96fb1ebdSEmmanuel Vadot	pm8550ve_9: pmic@9 {
469*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8550", "qcom,spmi-pmic";
470*96fb1ebdSEmmanuel Vadot		reg = <0x9 SPMI_USID>;
471*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
472*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
473*96fb1ebdSEmmanuel Vadot
474*96fb1ebdSEmmanuel Vadot		pm8550ve_9_temp_alarm: temp-alarm@a00 {
475*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
476*96fb1ebdSEmmanuel Vadot			reg = <0xa00>;
477*96fb1ebdSEmmanuel Vadot			interrupts = <0x9 0xa 0x0 IRQ_TYPE_EDGE_BOTH>;
478*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
479*96fb1ebdSEmmanuel Vadot		};
480*96fb1ebdSEmmanuel Vadot
481*96fb1ebdSEmmanuel Vadot		pm8550ve_9_gpios: gpio@8800 {
482*96fb1ebdSEmmanuel Vadot			compatible = "qcom,pm8550ve-gpio", "qcom,spmi-gpio";
483*96fb1ebdSEmmanuel Vadot			reg = <0x8800>;
484*96fb1ebdSEmmanuel Vadot			gpio-controller;
485*96fb1ebdSEmmanuel Vadot			gpio-ranges = <&pm8550ve_9_gpios 0 0 8>;
486*96fb1ebdSEmmanuel Vadot			#gpio-cells = <2>;
487*96fb1ebdSEmmanuel Vadot			interrupt-controller;
488*96fb1ebdSEmmanuel Vadot			#interrupt-cells = <2>;
489*96fb1ebdSEmmanuel Vadot		};
490*96fb1ebdSEmmanuel Vadot	};
491*96fb1ebdSEmmanuel Vadot
492*96fb1ebdSEmmanuel Vadot	pm8010: pmic@c {
493*96fb1ebdSEmmanuel Vadot		compatible = "qcom,pm8010", "qcom,spmi-pmic";
494*96fb1ebdSEmmanuel Vadot		reg = <0xc SPMI_USID>;
495*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
496*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
497*96fb1ebdSEmmanuel Vadot
498*96fb1ebdSEmmanuel Vadot		status = "disabled";
499*96fb1ebdSEmmanuel Vadot
500*96fb1ebdSEmmanuel Vadot		pm8010_temp_alarm: temp-alarm@2400 {
501*96fb1ebdSEmmanuel Vadot			compatible = "qcom,spmi-temp-alarm";
502*96fb1ebdSEmmanuel Vadot			reg = <0x2400>;
503*96fb1ebdSEmmanuel Vadot			interrupts = <0xc 0x24 0x0 IRQ_TYPE_EDGE_BOTH>;
504*96fb1ebdSEmmanuel Vadot			#thermal-sensor-cells = <0>;
505*96fb1ebdSEmmanuel Vadot		};
506*96fb1ebdSEmmanuel Vadot	};
507*96fb1ebdSEmmanuel Vadot};
508*96fb1ebdSEmmanuel Vadot
509*96fb1ebdSEmmanuel Vadot&spmi_bus1 {
510*96fb1ebdSEmmanuel Vadot	smb2360_0: pmic@7 {
511*96fb1ebdSEmmanuel Vadot		compatible = "qcom,smb2360", "qcom,spmi-pmic";
512*96fb1ebdSEmmanuel Vadot		reg = <0x7 SPMI_USID>;
513*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
514*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
515*96fb1ebdSEmmanuel Vadot
516*96fb1ebdSEmmanuel Vadot		status = "disabled";
517*96fb1ebdSEmmanuel Vadot
518*96fb1ebdSEmmanuel Vadot		smb2360_0_eusb2_repeater: phy@fd00 {
519*96fb1ebdSEmmanuel Vadot			compatible = "qcom,smb2360-eusb2-repeater";
520*96fb1ebdSEmmanuel Vadot			reg = <0xfd00>;
521*96fb1ebdSEmmanuel Vadot			#phy-cells = <0>;
522*96fb1ebdSEmmanuel Vadot		};
523*96fb1ebdSEmmanuel Vadot	};
524*96fb1ebdSEmmanuel Vadot
525*96fb1ebdSEmmanuel Vadot	smb2360_1: pmic@a {
526*96fb1ebdSEmmanuel Vadot		compatible = "qcom,smb2360", "qcom,spmi-pmic";
527*96fb1ebdSEmmanuel Vadot		reg = <0xa SPMI_USID>;
528*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
529*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
530*96fb1ebdSEmmanuel Vadot
531*96fb1ebdSEmmanuel Vadot		status = "disabled";
532*96fb1ebdSEmmanuel Vadot
533*96fb1ebdSEmmanuel Vadot		smb2360_1_eusb2_repeater: phy@fd00 {
534*96fb1ebdSEmmanuel Vadot			compatible = "qcom,smb2360-eusb2-repeater";
535*96fb1ebdSEmmanuel Vadot			reg = <0xfd00>;
536*96fb1ebdSEmmanuel Vadot			#phy-cells = <0>;
537*96fb1ebdSEmmanuel Vadot		};
538*96fb1ebdSEmmanuel Vadot	};
539*96fb1ebdSEmmanuel Vadot
540*96fb1ebdSEmmanuel Vadot	smb2360_2: pmic@b {
541*96fb1ebdSEmmanuel Vadot		compatible = "qcom,smb2360", "qcom,spmi-pmic";
542*96fb1ebdSEmmanuel Vadot		reg = <0xb SPMI_USID>;
543*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
544*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
545*96fb1ebdSEmmanuel Vadot
546*96fb1ebdSEmmanuel Vadot		status = "disabled";
547*96fb1ebdSEmmanuel Vadot
548*96fb1ebdSEmmanuel Vadot		smb2360_2_eusb2_repeater: phy@fd00 {
549*96fb1ebdSEmmanuel Vadot			compatible = "qcom,smb2360-eusb2-repeater";
550*96fb1ebdSEmmanuel Vadot			reg = <0xfd00>;
551*96fb1ebdSEmmanuel Vadot			#phy-cells = <0>;
552*96fb1ebdSEmmanuel Vadot		};
553*96fb1ebdSEmmanuel Vadot	};
554*96fb1ebdSEmmanuel Vadot
555*96fb1ebdSEmmanuel Vadot	smb2360_3: pmic@c {
556*96fb1ebdSEmmanuel Vadot		compatible = "qcom,smb2360", "qcom,spmi-pmic";
557*96fb1ebdSEmmanuel Vadot		reg = <0xc SPMI_USID>;
558*96fb1ebdSEmmanuel Vadot		#address-cells = <1>;
559*96fb1ebdSEmmanuel Vadot		#size-cells = <0>;
560*96fb1ebdSEmmanuel Vadot
561*96fb1ebdSEmmanuel Vadot		status = "disabled";
562*96fb1ebdSEmmanuel Vadot
563*96fb1ebdSEmmanuel Vadot		smb2360_3_eusb2_repeater: phy@fd00 {
564*96fb1ebdSEmmanuel Vadot			compatible = "qcom,smb2360-eusb2-repeater";
565*96fb1ebdSEmmanuel Vadot			reg = <0xfd00>;
566*96fb1ebdSEmmanuel Vadot			#phy-cells = <0>;
567*96fb1ebdSEmmanuel Vadot		};
568*96fb1ebdSEmmanuel Vadot	};
569*96fb1ebdSEmmanuel Vadot};
570