xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/msm8976-longcheer-l9360.dts (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1*833e5d42SEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2*833e5d42SEmmanuel Vadot/*
3*833e5d42SEmmanuel Vadot * Copyright (c) 2025, André Apitzsch <git@apitzsch.eu>
4*833e5d42SEmmanuel Vadot */
5*833e5d42SEmmanuel Vadot
6*833e5d42SEmmanuel Vadot/dts-v1/;
7*833e5d42SEmmanuel Vadot
8*833e5d42SEmmanuel Vadot#include <dt-bindings/leds/common.h>
9*833e5d42SEmmanuel Vadot
10*833e5d42SEmmanuel Vadot#include "msm8976.dtsi"
11*833e5d42SEmmanuel Vadot#include "pm8004.dtsi"
12*833e5d42SEmmanuel Vadot#include "pm8950.dtsi"
13*833e5d42SEmmanuel Vadot
14*833e5d42SEmmanuel Vadot/ {
15*833e5d42SEmmanuel Vadot	model = "BQ Aquaris X5 Plus (Longcheer L9360)";
16*833e5d42SEmmanuel Vadot	compatible = "longcheer,l9360", "qcom,msm8976";
17*833e5d42SEmmanuel Vadot	chassis-type = "handset";
18*833e5d42SEmmanuel Vadot
19*833e5d42SEmmanuel Vadot	aliases {
20*833e5d42SEmmanuel Vadot		mmc0 = &sdhc_1; /* SDC1 eMMC slot */
21*833e5d42SEmmanuel Vadot		mmc1 = &sdhc_2; /* SDC2 SD card slot */
22*833e5d42SEmmanuel Vadot	};
23*833e5d42SEmmanuel Vadot
24*833e5d42SEmmanuel Vadot	chosen {
25*833e5d42SEmmanuel Vadot		#address-cells = <2>;
26*833e5d42SEmmanuel Vadot		#size-cells = <2>;
27*833e5d42SEmmanuel Vadot		ranges;
28*833e5d42SEmmanuel Vadot
29*833e5d42SEmmanuel Vadot		framebuffer0: framebuffer@83200000 {
30*833e5d42SEmmanuel Vadot			compatible = "simple-framebuffer";
31*833e5d42SEmmanuel Vadot			reg = <0x0 0x83200000 0x0 (1080 * 1920 * 3)>;
32*833e5d42SEmmanuel Vadot			width = <1080>;
33*833e5d42SEmmanuel Vadot			height = <1920>;
34*833e5d42SEmmanuel Vadot			stride = <(1080 * 3)>;
35*833e5d42SEmmanuel Vadot			format = "r8g8b8";
36*833e5d42SEmmanuel Vadot
37*833e5d42SEmmanuel Vadot			power-domains = <&gcc MDSS_GDSC>;
38*833e5d42SEmmanuel Vadot
39*833e5d42SEmmanuel Vadot			clocks = <&gcc GCC_MDSS_AHB_CLK>,
40*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_AXI_CLK>,
41*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_VSYNC_CLK>,
42*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_MDP_CLK>,
43*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_BYTE0_CLK>,
44*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_PCLK0_CLK>,
45*833e5d42SEmmanuel Vadot				 <&gcc GCC_MDSS_ESC0_CLK>;
46*833e5d42SEmmanuel Vadot		};
47*833e5d42SEmmanuel Vadot	};
48*833e5d42SEmmanuel Vadot
49*833e5d42SEmmanuel Vadot	gpio-keys {
50*833e5d42SEmmanuel Vadot		compatible = "gpio-keys";
51*833e5d42SEmmanuel Vadot
52*833e5d42SEmmanuel Vadot		pinctrl-0 = <&hall_sensor_default>, <&volume_up_default>;
53*833e5d42SEmmanuel Vadot		pinctrl-names = "default";
54*833e5d42SEmmanuel Vadot
55*833e5d42SEmmanuel Vadot		event-hall-sensor {
56*833e5d42SEmmanuel Vadot			label = "Hall Effect Sensor";
57*833e5d42SEmmanuel Vadot			gpios = <&tlmm 107 GPIO_ACTIVE_HIGH>;
58*833e5d42SEmmanuel Vadot			linux,input-type = <EV_SW>;
59*833e5d42SEmmanuel Vadot			linux,code = <SW_LID>;
60*833e5d42SEmmanuel Vadot			linux,can-disable;
61*833e5d42SEmmanuel Vadot			wakeup-source;
62*833e5d42SEmmanuel Vadot		};
63*833e5d42SEmmanuel Vadot
64*833e5d42SEmmanuel Vadot		key-volume-up {
65*833e5d42SEmmanuel Vadot			label = "Volume Up";
66*833e5d42SEmmanuel Vadot			gpios = <&tlmm 113 GPIO_ACTIVE_LOW>;
67*833e5d42SEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
68*833e5d42SEmmanuel Vadot		};
69*833e5d42SEmmanuel Vadot	};
70*833e5d42SEmmanuel Vadot
71*833e5d42SEmmanuel Vadot	leds {
72*833e5d42SEmmanuel Vadot		compatible = "gpio-leds";
73*833e5d42SEmmanuel Vadot
74*833e5d42SEmmanuel Vadot		led-0 {
75*833e5d42SEmmanuel Vadot			gpios = <&tlmm 101 GPIO_ACTIVE_HIGH>;
76*833e5d42SEmmanuel Vadot			color = <LED_COLOR_ID_WHITE>;
77*833e5d42SEmmanuel Vadot			default-state = "off";
78*833e5d42SEmmanuel Vadot			function = LED_FUNCTION_KBD_BACKLIGHT;
79*833e5d42SEmmanuel Vadot
80*833e5d42SEmmanuel Vadot			pinctrl-0 = <&button_backlight_default>;
81*833e5d42SEmmanuel Vadot			pinctrl-names = "default";
82*833e5d42SEmmanuel Vadot		};
83*833e5d42SEmmanuel Vadot	};
84*833e5d42SEmmanuel Vadot
85*833e5d42SEmmanuel Vadot	reg_ts_vdd: regulator-vdd-ts {
86*833e5d42SEmmanuel Vadot		compatible = "regulator-fixed";
87*833e5d42SEmmanuel Vadot		regulator-name = "regulator-vdd-ts";
88*833e5d42SEmmanuel Vadot
89*833e5d42SEmmanuel Vadot		gpio = <&tlmm 33 GPIO_ACTIVE_HIGH>;
90*833e5d42SEmmanuel Vadot		enable-active-high;
91*833e5d42SEmmanuel Vadot	};
92*833e5d42SEmmanuel Vadot
93*833e5d42SEmmanuel Vadot	reserved-memory {
94*833e5d42SEmmanuel Vadot		framebuffer@83000000 {
95*833e5d42SEmmanuel Vadot			reg = <0x0 0x83000000 0x0 0x2800000>;
96*833e5d42SEmmanuel Vadot			no-map;
97*833e5d42SEmmanuel Vadot		};
98*833e5d42SEmmanuel Vadot	};
99*833e5d42SEmmanuel Vadot
100*833e5d42SEmmanuel Vadot	vph_pwr: regulator-vph-pwr {
101*833e5d42SEmmanuel Vadot		compatible = "regulator-fixed";
102*833e5d42SEmmanuel Vadot		regulator-name = "vph-pwr";
103*833e5d42SEmmanuel Vadot		regulator-always-on;
104*833e5d42SEmmanuel Vadot		regulator-boot-on;
105*833e5d42SEmmanuel Vadot	};
106*833e5d42SEmmanuel Vadot};
107*833e5d42SEmmanuel Vadot
108*833e5d42SEmmanuel Vadot&blsp1_i2c2 {
109*833e5d42SEmmanuel Vadot	status = "okay";
110*833e5d42SEmmanuel Vadot
111*833e5d42SEmmanuel Vadot	led-controller@30 {
112*833e5d42SEmmanuel Vadot		compatible = "kinetic,ktd2026";
113*833e5d42SEmmanuel Vadot		reg = <0x30>;
114*833e5d42SEmmanuel Vadot		#address-cells = <1>;
115*833e5d42SEmmanuel Vadot		#size-cells = <0>;
116*833e5d42SEmmanuel Vadot
117*833e5d42SEmmanuel Vadot		multi-led {
118*833e5d42SEmmanuel Vadot			color = <LED_COLOR_ID_RGB>;
119*833e5d42SEmmanuel Vadot			function = LED_FUNCTION_STATUS;
120*833e5d42SEmmanuel Vadot
121*833e5d42SEmmanuel Vadot			#address-cells = <1>;
122*833e5d42SEmmanuel Vadot			#size-cells = <0>;
123*833e5d42SEmmanuel Vadot
124*833e5d42SEmmanuel Vadot			led@0 {
125*833e5d42SEmmanuel Vadot				reg = <0>;
126*833e5d42SEmmanuel Vadot				color = <LED_COLOR_ID_RED>;
127*833e5d42SEmmanuel Vadot			};
128*833e5d42SEmmanuel Vadot
129*833e5d42SEmmanuel Vadot			led@1 {
130*833e5d42SEmmanuel Vadot				reg = <1>;
131*833e5d42SEmmanuel Vadot				color = <LED_COLOR_ID_GREEN>;
132*833e5d42SEmmanuel Vadot			};
133*833e5d42SEmmanuel Vadot
134*833e5d42SEmmanuel Vadot			led@2 {
135*833e5d42SEmmanuel Vadot				reg = <2>;
136*833e5d42SEmmanuel Vadot				color = <LED_COLOR_ID_BLUE>;
137*833e5d42SEmmanuel Vadot			};
138*833e5d42SEmmanuel Vadot		};
139*833e5d42SEmmanuel Vadot	};
140*833e5d42SEmmanuel Vadot};
141*833e5d42SEmmanuel Vadot
142*833e5d42SEmmanuel Vadot&blsp1_i2c4 {
143*833e5d42SEmmanuel Vadot	status = "okay";
144*833e5d42SEmmanuel Vadot
145*833e5d42SEmmanuel Vadot	nfc@28 {
146*833e5d42SEmmanuel Vadot		compatible = "nxp,pn547", "nxp,nxp-nci-i2c";
147*833e5d42SEmmanuel Vadot		reg = <0x28>;
148*833e5d42SEmmanuel Vadot
149*833e5d42SEmmanuel Vadot		interrupts-extended = <&tlmm 140 IRQ_TYPE_EDGE_RISING>;
150*833e5d42SEmmanuel Vadot
151*833e5d42SEmmanuel Vadot		enable-gpios = <&tlmm 122 GPIO_ACTIVE_HIGH>;
152*833e5d42SEmmanuel Vadot		firmware-gpios = <&tlmm 109 GPIO_ACTIVE_HIGH>;
153*833e5d42SEmmanuel Vadot
154*833e5d42SEmmanuel Vadot		pinctrl-0 = <&nfc_default>;
155*833e5d42SEmmanuel Vadot		pinctrl-1 = <&nfc_sleep>;
156*833e5d42SEmmanuel Vadot		pinctrl-names = "default", "sleep";
157*833e5d42SEmmanuel Vadot	};
158*833e5d42SEmmanuel Vadot};
159*833e5d42SEmmanuel Vadot
160*833e5d42SEmmanuel Vadot&blsp2_i2c2 {
161*833e5d42SEmmanuel Vadot	status = "okay";
162*833e5d42SEmmanuel Vadot
163*833e5d42SEmmanuel Vadot	touchscreen@20 {
164*833e5d42SEmmanuel Vadot		reg = <0x20>;
165*833e5d42SEmmanuel Vadot		compatible = "syna,rmi4-i2c";
166*833e5d42SEmmanuel Vadot
167*833e5d42SEmmanuel Vadot		interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_FALLING>;
168*833e5d42SEmmanuel Vadot
169*833e5d42SEmmanuel Vadot		pinctrl-0 = <&ts_int_default>, <&ts_reset_default>;
170*833e5d42SEmmanuel Vadot		pinctrl-1 = <&ts_int_sleep>, <&ts_reset_sleep>;
171*833e5d42SEmmanuel Vadot		pinctrl-names = "default", "sleep";
172*833e5d42SEmmanuel Vadot
173*833e5d42SEmmanuel Vadot		vdd-supply = <&pm8950_l6>;
174*833e5d42SEmmanuel Vadot		vio-supply = <&reg_ts_vdd>;
175*833e5d42SEmmanuel Vadot
176*833e5d42SEmmanuel Vadot		reset-gpios = <&tlmm 64 GPIO_ACTIVE_LOW>;
177*833e5d42SEmmanuel Vadot
178*833e5d42SEmmanuel Vadot		syna,reset-delay-ms = <200>;
179*833e5d42SEmmanuel Vadot		syna,startup-delay-ms = <200>;
180*833e5d42SEmmanuel Vadot
181*833e5d42SEmmanuel Vadot		#address-cells = <1>;
182*833e5d42SEmmanuel Vadot		#size-cells = <0>;
183*833e5d42SEmmanuel Vadot
184*833e5d42SEmmanuel Vadot		rmi4-f01@1 {
185*833e5d42SEmmanuel Vadot			reg = <0x1>;
186*833e5d42SEmmanuel Vadot			syna,nosleep-mode = <1>;
187*833e5d42SEmmanuel Vadot		};
188*833e5d42SEmmanuel Vadot
189*833e5d42SEmmanuel Vadot		rmi4-f12@12 {
190*833e5d42SEmmanuel Vadot			reg = <0x12>;
191*833e5d42SEmmanuel Vadot			syna,sensor-type = <1>;
192*833e5d42SEmmanuel Vadot		};
193*833e5d42SEmmanuel Vadot	};
194*833e5d42SEmmanuel Vadot};
195*833e5d42SEmmanuel Vadot
196*833e5d42SEmmanuel Vadot&blsp2_uart2 {
197*833e5d42SEmmanuel Vadot	status = "okay";
198*833e5d42SEmmanuel Vadot};
199*833e5d42SEmmanuel Vadot
200*833e5d42SEmmanuel Vadot&gcc {
201*833e5d42SEmmanuel Vadot	vdd_gfx-supply = <&pm8004_s5>;
202*833e5d42SEmmanuel Vadot};
203*833e5d42SEmmanuel Vadot
204*833e5d42SEmmanuel Vadot&pm8004_spmi_regulators {
205*833e5d42SEmmanuel Vadot	vdd_s2-supply = <&vph_pwr>;
206*833e5d42SEmmanuel Vadot	vdd_s5-supply = <&vph_pwr>;
207*833e5d42SEmmanuel Vadot
208*833e5d42SEmmanuel Vadot	/* Cluster 1 supply */
209*833e5d42SEmmanuel Vadot	pm8004_s2: s2 {
210*833e5d42SEmmanuel Vadot		/* regulator-min-microvolt = <500000>; */
211*833e5d42SEmmanuel Vadot		/* Set .95V to prevent unstabilities until CPR for this SoC is done */
212*833e5d42SEmmanuel Vadot		regulator-min-microvolt = <950000>;
213*833e5d42SEmmanuel Vadot		regulator-max-microvolt = <1165000>;
214*833e5d42SEmmanuel Vadot		regulator-name = "vdd_apc1";
215*833e5d42SEmmanuel Vadot		/* Set always on until the CPU PLL is done */
216*833e5d42SEmmanuel Vadot		regulator-always-on;
217*833e5d42SEmmanuel Vadot		regulator-boot-on;
218*833e5d42SEmmanuel Vadot	};
219*833e5d42SEmmanuel Vadot
220*833e5d42SEmmanuel Vadot	pm8004_s5: s5 {
221*833e5d42SEmmanuel Vadot		regulator-min-microvolt = <950000>;
222*833e5d42SEmmanuel Vadot		regulator-max-microvolt = <1165000>;
223*833e5d42SEmmanuel Vadot		regulator-enable-ramp-delay = <500>;
224*833e5d42SEmmanuel Vadot		regulator-name = "vdd_gfx";
225*833e5d42SEmmanuel Vadot		/* Hack this on until the gpu driver is ready for it */
226*833e5d42SEmmanuel Vadot		regulator-always-on;
227*833e5d42SEmmanuel Vadot	};
228*833e5d42SEmmanuel Vadot};
229*833e5d42SEmmanuel Vadot
230*833e5d42SEmmanuel Vadot&pm8950_resin {
231*833e5d42SEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
232*833e5d42SEmmanuel Vadot	status = "okay";
233*833e5d42SEmmanuel Vadot};
234*833e5d42SEmmanuel Vadot
235*833e5d42SEmmanuel Vadot&pm8950_spmi_regulators {
236*833e5d42SEmmanuel Vadot	vdd_s5-supply = <&vph_pwr>;
237*833e5d42SEmmanuel Vadot
238*833e5d42SEmmanuel Vadot	/* Cluster 0 supply */
239*833e5d42SEmmanuel Vadot	pm8950_spmi_s5: s5 {
240*833e5d42SEmmanuel Vadot		/* Set .95V to prevent unstabilities until CPR for this SoC is done */
241*833e5d42SEmmanuel Vadot		/* regulator-min-microvolt = <500000>; */
242*833e5d42SEmmanuel Vadot		regulator-min-microvolt = <950000>;
243*833e5d42SEmmanuel Vadot		regulator-max-microvolt = <1165000>;
244*833e5d42SEmmanuel Vadot		regulator-name = "vdd_apc0";
245*833e5d42SEmmanuel Vadot		/* Set always on until the CPU PLL is done */
246*833e5d42SEmmanuel Vadot		regulator-always-on;
247*833e5d42SEmmanuel Vadot		regulator-boot-on;
248*833e5d42SEmmanuel Vadot	};
249*833e5d42SEmmanuel Vadot};
250*833e5d42SEmmanuel Vadot
251*833e5d42SEmmanuel Vadot&rpm_requests {
252*833e5d42SEmmanuel Vadot	pm8950_regulators: regulators {
253*833e5d42SEmmanuel Vadot		compatible = "qcom,rpm-pm8950-regulators";
254*833e5d42SEmmanuel Vadot
255*833e5d42SEmmanuel Vadot		vdd_s1-supply = <&vph_pwr>;
256*833e5d42SEmmanuel Vadot		vdd_s2-supply = <&vph_pwr>;
257*833e5d42SEmmanuel Vadot		vdd_s3-supply = <&vph_pwr>;
258*833e5d42SEmmanuel Vadot		vdd_s4-supply = <&vph_pwr>;
259*833e5d42SEmmanuel Vadot		vdd_s6-supply = <&vph_pwr>;
260*833e5d42SEmmanuel Vadot		vdd_l1_l19-supply = <&pm8950_s3>;
261*833e5d42SEmmanuel Vadot		vdd_l2_l23-supply = <&pm8950_s3>;
262*833e5d42SEmmanuel Vadot		vdd_l3-supply = <&pm8950_s3>;
263*833e5d42SEmmanuel Vadot		vdd_l5_l6_l7_l16-supply = <&pm8950_s4>;
264*833e5d42SEmmanuel Vadot		vdd_l8_l11_l12_l17_l22-supply = <&vph_pwr>;
265*833e5d42SEmmanuel Vadot
266*833e5d42SEmmanuel Vadot		pm8950_s1: s1 {
267*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1000000>;
268*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1162500>;
269*833e5d42SEmmanuel Vadot		};
270*833e5d42SEmmanuel Vadot
271*833e5d42SEmmanuel Vadot		pm8950_s3: s3 {
272*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1325000>;
273*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1325000>;
274*833e5d42SEmmanuel Vadot		};
275*833e5d42SEmmanuel Vadot
276*833e5d42SEmmanuel Vadot		pm8950_s4: s4 {
277*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2050000>;
278*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2050000>;
279*833e5d42SEmmanuel Vadot		};
280*833e5d42SEmmanuel Vadot
281*833e5d42SEmmanuel Vadot		pm8950_l1: l1 {
282*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
283*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1200000>;
284*833e5d42SEmmanuel Vadot		};
285*833e5d42SEmmanuel Vadot
286*833e5d42SEmmanuel Vadot		pm8950_l2: l2 {
287*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
288*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1200000>;
289*833e5d42SEmmanuel Vadot		};
290*833e5d42SEmmanuel Vadot
291*833e5d42SEmmanuel Vadot		pm8950_l3: l3 {
292*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1000000>;
293*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1100000>;
294*833e5d42SEmmanuel Vadot		};
295*833e5d42SEmmanuel Vadot
296*833e5d42SEmmanuel Vadot		pm8950_l5: l5 {
297*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
298*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
299*833e5d42SEmmanuel Vadot		};
300*833e5d42SEmmanuel Vadot
301*833e5d42SEmmanuel Vadot		pm8950_l6: l6 {
302*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
303*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
304*833e5d42SEmmanuel Vadot		};
305*833e5d42SEmmanuel Vadot
306*833e5d42SEmmanuel Vadot		pm8950_l7: l7 {
307*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
308*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
309*833e5d42SEmmanuel Vadot		};
310*833e5d42SEmmanuel Vadot
311*833e5d42SEmmanuel Vadot		pm8950_l8: l8 {
312*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2900000>;
313*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2900000>;
314*833e5d42SEmmanuel Vadot		};
315*833e5d42SEmmanuel Vadot
316*833e5d42SEmmanuel Vadot		pm8950_l9: l9 {
317*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <3000000>;
318*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <3300000>;
319*833e5d42SEmmanuel Vadot		};
320*833e5d42SEmmanuel Vadot
321*833e5d42SEmmanuel Vadot		pm8950_l10: l10 {
322*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2800000>;
323*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2800000>;
324*833e5d42SEmmanuel Vadot		};
325*833e5d42SEmmanuel Vadot
326*833e5d42SEmmanuel Vadot		pm8950_l11: l11 {
327*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2950000>;
328*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2950000>;
329*833e5d42SEmmanuel Vadot		};
330*833e5d42SEmmanuel Vadot
331*833e5d42SEmmanuel Vadot		pm8950_l12: l12 {
332*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
333*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2950000>;
334*833e5d42SEmmanuel Vadot		};
335*833e5d42SEmmanuel Vadot
336*833e5d42SEmmanuel Vadot		pm8950_l13: l13 {
337*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <3075000>;
338*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <3075000>;
339*833e5d42SEmmanuel Vadot		};
340*833e5d42SEmmanuel Vadot
341*833e5d42SEmmanuel Vadot		pm8950_l14: l14 {
342*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
343*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <3300000>;
344*833e5d42SEmmanuel Vadot		};
345*833e5d42SEmmanuel Vadot
346*833e5d42SEmmanuel Vadot		pm8950_l15: l15 {
347*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
348*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <3300000>;
349*833e5d42SEmmanuel Vadot		};
350*833e5d42SEmmanuel Vadot
351*833e5d42SEmmanuel Vadot		pm8950_l16: l16 {
352*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1800000>;
353*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1800000>;
354*833e5d42SEmmanuel Vadot		};
355*833e5d42SEmmanuel Vadot
356*833e5d42SEmmanuel Vadot		pm8950_l17: l17 {
357*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2850000>;
358*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2850000>;
359*833e5d42SEmmanuel Vadot		};
360*833e5d42SEmmanuel Vadot
361*833e5d42SEmmanuel Vadot		pm8950_l19: l19 {
362*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
363*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1350000>;
364*833e5d42SEmmanuel Vadot		};
365*833e5d42SEmmanuel Vadot
366*833e5d42SEmmanuel Vadot		pm8950_l22: l22 {
367*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <2800000>;
368*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <2800000>;
369*833e5d42SEmmanuel Vadot		};
370*833e5d42SEmmanuel Vadot
371*833e5d42SEmmanuel Vadot		pm8950_l23: l23 {
372*833e5d42SEmmanuel Vadot			regulator-min-microvolt = <1200000>;
373*833e5d42SEmmanuel Vadot			regulator-max-microvolt = <1200000>;
374*833e5d42SEmmanuel Vadot		};
375*833e5d42SEmmanuel Vadot	};
376*833e5d42SEmmanuel Vadot};
377*833e5d42SEmmanuel Vadot
378*833e5d42SEmmanuel Vadot&sdhc_1 {
379*833e5d42SEmmanuel Vadot	bus-width = <8>;
380*833e5d42SEmmanuel Vadot	non-removable;
381*833e5d42SEmmanuel Vadot	vmmc-supply = <&pm8950_l8>;
382*833e5d42SEmmanuel Vadot	vqmmc-supply = <&pm8950_l5>;
383*833e5d42SEmmanuel Vadot	status = "okay";
384*833e5d42SEmmanuel Vadot};
385*833e5d42SEmmanuel Vadot
386*833e5d42SEmmanuel Vadot&sdhc_2 {
387*833e5d42SEmmanuel Vadot	bus-width = <4>;
388*833e5d42SEmmanuel Vadot	cd-gpios = <&tlmm 100 GPIO_ACTIVE_LOW>;
389*833e5d42SEmmanuel Vadot	vmmc-supply = <&pm8950_l11>;
390*833e5d42SEmmanuel Vadot	vqmmc-supply = <&pm8950_l12>;
391*833e5d42SEmmanuel Vadot
392*833e5d42SEmmanuel Vadot	pinctrl-0 = <&sdc2_default>, <&sdc2_cd_default>;
393*833e5d42SEmmanuel Vadot	pinctrl-1 = <&sdc2_sleep>, <&sdc2_cd_sleep>;
394*833e5d42SEmmanuel Vadot	pinctrl-names = "default", "sleep";
395*833e5d42SEmmanuel Vadot
396*833e5d42SEmmanuel Vadot	status = "okay";
397*833e5d42SEmmanuel Vadot};
398*833e5d42SEmmanuel Vadot
399*833e5d42SEmmanuel Vadot&tlmm {
400*833e5d42SEmmanuel Vadot	gpio-reserved-ranges = <0 4>;
401*833e5d42SEmmanuel Vadot
402*833e5d42SEmmanuel Vadot	button_backlight_default: button-backlight-default-state {
403*833e5d42SEmmanuel Vadot		pins = "gpio101";
404*833e5d42SEmmanuel Vadot		function = "gpio";
405*833e5d42SEmmanuel Vadot		drive-strength = <2>;
406*833e5d42SEmmanuel Vadot		bias-disable;
407*833e5d42SEmmanuel Vadot	};
408*833e5d42SEmmanuel Vadot
409*833e5d42SEmmanuel Vadot	hall_sensor_default: hall-sensor-default-state {
410*833e5d42SEmmanuel Vadot		pins = "gpio107";
411*833e5d42SEmmanuel Vadot		function = "gpio";
412*833e5d42SEmmanuel Vadot		drive-strength = <6>;
413*833e5d42SEmmanuel Vadot		bias-pull-up;
414*833e5d42SEmmanuel Vadot	};
415*833e5d42SEmmanuel Vadot
416*833e5d42SEmmanuel Vadot	nfc_default: nfc-default-state {
417*833e5d42SEmmanuel Vadot		pins = "gpio122", "gpio140";
418*833e5d42SEmmanuel Vadot		function = "gpio";
419*833e5d42SEmmanuel Vadot		drive-strength = <6>;
420*833e5d42SEmmanuel Vadot		bias-pull-up;
421*833e5d42SEmmanuel Vadot	};
422*833e5d42SEmmanuel Vadot
423*833e5d42SEmmanuel Vadot	nfc_sleep: nfc-sleep-state {
424*833e5d42SEmmanuel Vadot		int-pins {
425*833e5d42SEmmanuel Vadot			pins = "gpio140";
426*833e5d42SEmmanuel Vadot			function = "gpio";
427*833e5d42SEmmanuel Vadot			drive-strength = <6>;
428*833e5d42SEmmanuel Vadot			bias-pull-up;
429*833e5d42SEmmanuel Vadot		};
430*833e5d42SEmmanuel Vadot		ven-pins {
431*833e5d42SEmmanuel Vadot			pins = "gpio122";
432*833e5d42SEmmanuel Vadot			function = "gpio";
433*833e5d42SEmmanuel Vadot			drive-strength = <6>;
434*833e5d42SEmmanuel Vadot			bias-disable;
435*833e5d42SEmmanuel Vadot		};
436*833e5d42SEmmanuel Vadot	};
437*833e5d42SEmmanuel Vadot
438*833e5d42SEmmanuel Vadot	sdc2_cd_default: sdc2-cd-default-state {
439*833e5d42SEmmanuel Vadot		pins = "gpio100";
440*833e5d42SEmmanuel Vadot		function = "gpio";
441*833e5d42SEmmanuel Vadot		drive-strength = <2>;
442*833e5d42SEmmanuel Vadot		bias-pull-up;
443*833e5d42SEmmanuel Vadot	};
444*833e5d42SEmmanuel Vadot
445*833e5d42SEmmanuel Vadot	sdc2_cd_sleep: sdc2-cd-sleep-state {
446*833e5d42SEmmanuel Vadot		pins = "gpio100";
447*833e5d42SEmmanuel Vadot		function = "gpio";
448*833e5d42SEmmanuel Vadot		drive-strength = <2>;
449*833e5d42SEmmanuel Vadot		bias-disable;
450*833e5d42SEmmanuel Vadot	};
451*833e5d42SEmmanuel Vadot
452*833e5d42SEmmanuel Vadot	ts_int_default: ts-int-state {
453*833e5d42SEmmanuel Vadot		pins = "gpio65";
454*833e5d42SEmmanuel Vadot		function = "gpio";
455*833e5d42SEmmanuel Vadot		drive-strength = <2>;
456*833e5d42SEmmanuel Vadot		bias-pull-down;
457*833e5d42SEmmanuel Vadot	};
458*833e5d42SEmmanuel Vadot
459*833e5d42SEmmanuel Vadot	ts_int_sleep: ts-int-state {
460*833e5d42SEmmanuel Vadot		pins = "gpio65";
461*833e5d42SEmmanuel Vadot		function = "gpio";
462*833e5d42SEmmanuel Vadot		drive-strength = <2>;
463*833e5d42SEmmanuel Vadot		bias-pull-up;
464*833e5d42SEmmanuel Vadot	};
465*833e5d42SEmmanuel Vadot
466*833e5d42SEmmanuel Vadot	ts_reset_default: ts-reset-state {
467*833e5d42SEmmanuel Vadot		pins = "gpio64";
468*833e5d42SEmmanuel Vadot		function = "gpio";
469*833e5d42SEmmanuel Vadot		drive-strength = <8>;
470*833e5d42SEmmanuel Vadot		bias-pull-up;
471*833e5d42SEmmanuel Vadot	};
472*833e5d42SEmmanuel Vadot
473*833e5d42SEmmanuel Vadot	ts_reset_sleep: ts-sleep-state {
474*833e5d42SEmmanuel Vadot		pins = "gpio64";
475*833e5d42SEmmanuel Vadot		function = "gpio";
476*833e5d42SEmmanuel Vadot		drive-strength = <2>;
477*833e5d42SEmmanuel Vadot		bias-pull-down;
478*833e5d42SEmmanuel Vadot	};
479*833e5d42SEmmanuel Vadot
480*833e5d42SEmmanuel Vadot	volume_up_default: volume-up-default-state {
481*833e5d42SEmmanuel Vadot		pins = "gpio113";
482*833e5d42SEmmanuel Vadot		function = "gpio";
483*833e5d42SEmmanuel Vadot		drive-strength = <2>;
484*833e5d42SEmmanuel Vadot		bias-pull-up;
485*833e5d42SEmmanuel Vadot	};
486*833e5d42SEmmanuel Vadot};
487*833e5d42SEmmanuel Vadot
488*833e5d42SEmmanuel Vadot&xo_board {
489*833e5d42SEmmanuel Vadot	clock-frequency = <19200000>;
490*833e5d42SEmmanuel Vadot};
491