xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-msm8974pro-sony-xperia-shinano-common.dtsi (revision 53426f53eda5e4a17197a8bc7dd1045601db407e)
1*53426f53SLuca Weiss// SPDX-License-Identifier: GPL-2.0
2*53426f53SLuca Weiss#include "qcom-msm8974pro.dtsi"
3*53426f53SLuca Weiss#include "pm8841.dtsi"
4*53426f53SLuca Weiss#include "pm8941.dtsi"
5*53426f53SLuca Weiss#include <dt-bindings/input/input.h>
6*53426f53SLuca Weiss#include <dt-bindings/leds/common.h>
7*53426f53SLuca Weiss#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
8*53426f53SLuca Weiss
9*53426f53SLuca Weiss/ {
10*53426f53SLuca Weiss	aliases {
11*53426f53SLuca Weiss		mmc0 = &sdhc_1;
12*53426f53SLuca Weiss		mmc1 = &sdhc_2;
13*53426f53SLuca Weiss		serial0 = &blsp1_uart2;
14*53426f53SLuca Weiss		serial1 = &blsp2_uart1;
15*53426f53SLuca Weiss	};
16*53426f53SLuca Weiss
17*53426f53SLuca Weiss	chosen {
18*53426f53SLuca Weiss		stdout-path = "serial0:115200n8";
19*53426f53SLuca Weiss	};
20*53426f53SLuca Weiss
21*53426f53SLuca Weiss	gpio-keys {
22*53426f53SLuca Weiss		compatible = "gpio-keys";
23*53426f53SLuca Weiss
24*53426f53SLuca Weiss		pinctrl-0 = <&gpio_keys_pin_a>;
25*53426f53SLuca Weiss		pinctrl-names = "default";
26*53426f53SLuca Weiss
27*53426f53SLuca Weiss		key-volume-down {
28*53426f53SLuca Weiss			label = "volume_down";
29*53426f53SLuca Weiss			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
30*53426f53SLuca Weiss			linux,code = <KEY_VOLUMEDOWN>;
31*53426f53SLuca Weiss			debounce-interval = <15>;
32*53426f53SLuca Weiss		};
33*53426f53SLuca Weiss
34*53426f53SLuca Weiss		key-volume-up {
35*53426f53SLuca Weiss			label = "volume_up";
36*53426f53SLuca Weiss			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
37*53426f53SLuca Weiss			linux,code = <KEY_VOLUMEUP>;
38*53426f53SLuca Weiss			debounce-interval = <15>;
39*53426f53SLuca Weiss		};
40*53426f53SLuca Weiss	};
41*53426f53SLuca Weiss
42*53426f53SLuca Weiss	vreg_vsp: lcd-dcdc-regulator {
43*53426f53SLuca Weiss		compatible = "regulator-fixed";
44*53426f53SLuca Weiss		regulator-name = "vreg_vsp";
45*53426f53SLuca Weiss		regulator-min-microvolt = <5600000>;
46*53426f53SLuca Weiss		regulator-max-microvolt = <5600000>;
47*53426f53SLuca Weiss
48*53426f53SLuca Weiss		gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
49*53426f53SLuca Weiss		enable-active-high;
50*53426f53SLuca Weiss
51*53426f53SLuca Weiss		pinctrl-0 = <&lcd_dcdc_en_pin_a>;
52*53426f53SLuca Weiss		pinctrl-names = "default";
53*53426f53SLuca Weiss	};
54*53426f53SLuca Weiss
55*53426f53SLuca Weiss	vreg_boost: vreg-boost {
56*53426f53SLuca Weiss		compatible = "regulator-fixed";
57*53426f53SLuca Weiss
58*53426f53SLuca Weiss		regulator-name = "vreg-boost";
59*53426f53SLuca Weiss		regulator-min-microvolt = <3150000>;
60*53426f53SLuca Weiss		regulator-max-microvolt = <3150000>;
61*53426f53SLuca Weiss
62*53426f53SLuca Weiss		regulator-always-on;
63*53426f53SLuca Weiss		regulator-boot-on;
64*53426f53SLuca Weiss
65*53426f53SLuca Weiss		gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
66*53426f53SLuca Weiss		enable-active-high;
67*53426f53SLuca Weiss
68*53426f53SLuca Weiss		pinctrl-names = "default";
69*53426f53SLuca Weiss		pinctrl-0 = <&boost_bypass_n_pin>;
70*53426f53SLuca Weiss	};
71*53426f53SLuca Weiss
72*53426f53SLuca Weiss	vreg_vph_pwr: vreg-vph-pwr {
73*53426f53SLuca Weiss		compatible = "regulator-fixed";
74*53426f53SLuca Weiss		regulator-name = "vph-pwr";
75*53426f53SLuca Weiss
76*53426f53SLuca Weiss		regulator-min-microvolt = <3600000>;
77*53426f53SLuca Weiss		regulator-max-microvolt = <3600000>;
78*53426f53SLuca Weiss
79*53426f53SLuca Weiss		regulator-always-on;
80*53426f53SLuca Weiss	};
81*53426f53SLuca Weiss
82*53426f53SLuca Weiss	vreg_wlan: wlan-regulator {
83*53426f53SLuca Weiss		compatible = "regulator-fixed";
84*53426f53SLuca Weiss
85*53426f53SLuca Weiss		regulator-name = "wl-reg";
86*53426f53SLuca Weiss		regulator-min-microvolt = <3300000>;
87*53426f53SLuca Weiss		regulator-max-microvolt = <3300000>;
88*53426f53SLuca Weiss
89*53426f53SLuca Weiss		gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
90*53426f53SLuca Weiss		enable-active-high;
91*53426f53SLuca Weiss
92*53426f53SLuca Weiss		pinctrl-0 = <&wlan_regulator_pin>;
93*53426f53SLuca Weiss		pinctrl-names = "default";
94*53426f53SLuca Weiss	};
95*53426f53SLuca Weiss};
96*53426f53SLuca Weiss
97*53426f53SLuca Weiss&blsp1_uart2 {
98*53426f53SLuca Weiss	status = "okay";
99*53426f53SLuca Weiss};
100*53426f53SLuca Weiss
101*53426f53SLuca Weiss&blsp2_i2c2 {
102*53426f53SLuca Weiss	clock-frequency = <355000>;
103*53426f53SLuca Weiss
104*53426f53SLuca Weiss	status = "okay";
105*53426f53SLuca Weiss
106*53426f53SLuca Weiss	synaptics_touchscreen: synaptics@2c {
107*53426f53SLuca Weiss		compatible = "syna,rmi4-i2c";
108*53426f53SLuca Weiss		reg = <0x2c>;
109*53426f53SLuca Weiss
110*53426f53SLuca Weiss		interrupt-parent = <&tlmm>;
111*53426f53SLuca Weiss		interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
112*53426f53SLuca Weiss
113*53426f53SLuca Weiss		#address-cells = <1>;
114*53426f53SLuca Weiss		#size-cells = <0>;
115*53426f53SLuca Weiss
116*53426f53SLuca Weiss		vdd-supply = <&pm8941_l22>;
117*53426f53SLuca Weiss		/* vio-supply is set in dts */
118*53426f53SLuca Weiss
119*53426f53SLuca Weiss		pinctrl-0 = <&ts_int_pin>;
120*53426f53SLuca Weiss		pinctrl-names = "default";
121*53426f53SLuca Weiss
122*53426f53SLuca Weiss		syna,startup-delay-ms = <100>;
123*53426f53SLuca Weiss
124*53426f53SLuca Weiss		rmi4-f01@1 {
125*53426f53SLuca Weiss			reg = <0x1>;
126*53426f53SLuca Weiss			syna,nosleep-mode = <1>;
127*53426f53SLuca Weiss		};
128*53426f53SLuca Weiss
129*53426f53SLuca Weiss		rmi4-f11@11 {
130*53426f53SLuca Weiss			reg = <0x11>;
131*53426f53SLuca Weiss			syna,sensor-type = <1>;
132*53426f53SLuca Weiss			touchscreen-inverted-x;
133*53426f53SLuca Weiss		};
134*53426f53SLuca Weiss	};
135*53426f53SLuca Weiss};
136*53426f53SLuca Weiss
137*53426f53SLuca Weiss&pm8941_coincell {
138*53426f53SLuca Weiss	qcom,rset-ohms = <2100>;
139*53426f53SLuca Weiss	qcom,vset-millivolts = <3000>;
140*53426f53SLuca Weiss
141*53426f53SLuca Weiss	status = "okay";
142*53426f53SLuca Weiss};
143*53426f53SLuca Weiss
144*53426f53SLuca Weiss&pm8941_gpios {
145*53426f53SLuca Weiss	gpio_keys_pin_a: gpio-keys-active-state {
146*53426f53SLuca Weiss		pins = "gpio2", "gpio5";
147*53426f53SLuca Weiss		function = "normal";
148*53426f53SLuca Weiss		bias-pull-up;
149*53426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
150*53426f53SLuca Weiss	};
151*53426f53SLuca Weiss
152*53426f53SLuca Weiss	wlan_sleep_clk_pin: wl-sleep-clk-state {
153*53426f53SLuca Weiss		pins = "gpio17";
154*53426f53SLuca Weiss		function = "func2";
155*53426f53SLuca Weiss		output-high;
156*53426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
157*53426f53SLuca Weiss	};
158*53426f53SLuca Weiss
159*53426f53SLuca Weiss	wlan_regulator_pin: wl-reg-active-state {
160*53426f53SLuca Weiss		pins = "gpio18";
161*53426f53SLuca Weiss		function = "normal";
162*53426f53SLuca Weiss		bias-disable;
163*53426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
164*53426f53SLuca Weiss	};
165*53426f53SLuca Weiss
166*53426f53SLuca Weiss	lcd_dcdc_en_pin_a: lcd-dcdc-en-active-state {
167*53426f53SLuca Weiss		pins = "gpio20";
168*53426f53SLuca Weiss		function = "normal";
169*53426f53SLuca Weiss		bias-disable;
170*53426f53SLuca Weiss		power-source = <PM8941_GPIO_S3>;
171*53426f53SLuca Weiss		input-disable;
172*53426f53SLuca Weiss		output-low;
173*53426f53SLuca Weiss	};
174*53426f53SLuca Weiss};
175*53426f53SLuca Weiss
176*53426f53SLuca Weiss&pm8941_lpg {
177*53426f53SLuca Weiss	qcom,power-source = <1>;
178*53426f53SLuca Weiss
179*53426f53SLuca Weiss	status = "okay";
180*53426f53SLuca Weiss
181*53426f53SLuca Weiss	multi-led {
182*53426f53SLuca Weiss		color = <LED_COLOR_ID_RGB>;
183*53426f53SLuca Weiss		function = LED_FUNCTION_STATUS;
184*53426f53SLuca Weiss
185*53426f53SLuca Weiss		#address-cells = <1>;
186*53426f53SLuca Weiss		#size-cells = <0>;
187*53426f53SLuca Weiss
188*53426f53SLuca Weiss		led@5 {
189*53426f53SLuca Weiss			reg = <5>;
190*53426f53SLuca Weiss			color = <LED_COLOR_ID_BLUE>;
191*53426f53SLuca Weiss		};
192*53426f53SLuca Weiss
193*53426f53SLuca Weiss		led@6 {
194*53426f53SLuca Weiss			reg = <6>;
195*53426f53SLuca Weiss			color = <LED_COLOR_ID_GREEN>;
196*53426f53SLuca Weiss		};
197*53426f53SLuca Weiss
198*53426f53SLuca Weiss		led@7 {
199*53426f53SLuca Weiss			reg = <7>;
200*53426f53SLuca Weiss			color = <LED_COLOR_ID_RED>;
201*53426f53SLuca Weiss		};
202*53426f53SLuca Weiss	};
203*53426f53SLuca Weiss};
204*53426f53SLuca Weiss
205*53426f53SLuca Weiss&remoteproc_adsp {
206*53426f53SLuca Weiss	cx-supply = <&pm8841_s2>;
207*53426f53SLuca Weiss	status = "okay";
208*53426f53SLuca Weiss};
209*53426f53SLuca Weiss
210*53426f53SLuca Weiss&remoteproc_mss {
211*53426f53SLuca Weiss	cx-supply = <&pm8841_s2>;
212*53426f53SLuca Weiss	mss-supply = <&pm8841_s3>;
213*53426f53SLuca Weiss	mx-supply = <&pm8841_s1>;
214*53426f53SLuca Weiss	pll-supply = <&pm8941_l12>;
215*53426f53SLuca Weiss	status = "okay";
216*53426f53SLuca Weiss};
217*53426f53SLuca Weiss
218*53426f53SLuca Weiss&rpm_requests {
219*53426f53SLuca Weiss	regulators-0 {
220*53426f53SLuca Weiss		compatible = "qcom,rpm-pm8841-regulators";
221*53426f53SLuca Weiss
222*53426f53SLuca Weiss		pm8841_s1: s1 {
223*53426f53SLuca Weiss			regulator-min-microvolt = <675000>;
224*53426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
225*53426f53SLuca Weiss		};
226*53426f53SLuca Weiss
227*53426f53SLuca Weiss		pm8841_s2: s2 {
228*53426f53SLuca Weiss			regulator-min-microvolt = <500000>;
229*53426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
230*53426f53SLuca Weiss		};
231*53426f53SLuca Weiss
232*53426f53SLuca Weiss		pm8841_s3: s3 {
233*53426f53SLuca Weiss			regulator-min-microvolt = <500000>;
234*53426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
235*53426f53SLuca Weiss		};
236*53426f53SLuca Weiss
237*53426f53SLuca Weiss		pm8841_s4: s4 {
238*53426f53SLuca Weiss			regulator-min-microvolt = <500000>;
239*53426f53SLuca Weiss			regulator-max-microvolt = <1050000>;
240*53426f53SLuca Weiss		};
241*53426f53SLuca Weiss	};
242*53426f53SLuca Weiss
243*53426f53SLuca Weiss	regulators-1 {
244*53426f53SLuca Weiss		compatible = "qcom,rpm-pm8941-regulators";
245*53426f53SLuca Weiss
246*53426f53SLuca Weiss		vdd_l1_l3-supply = <&pm8941_s1>;
247*53426f53SLuca Weiss		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
248*53426f53SLuca Weiss		vdd_l4_l11-supply = <&pm8941_s1>;
249*53426f53SLuca Weiss		vdd_l5_l7-supply = <&pm8941_s2>;
250*53426f53SLuca Weiss		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
251*53426f53SLuca Weiss		vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
252*53426f53SLuca Weiss		vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
253*53426f53SLuca Weiss		vdd_l21-supply = <&vreg_boost>;
254*53426f53SLuca Weiss
255*53426f53SLuca Weiss		pm8941_s1: s1 {
256*53426f53SLuca Weiss			regulator-min-microvolt = <1300000>;
257*53426f53SLuca Weiss			regulator-max-microvolt = <1300000>;
258*53426f53SLuca Weiss			regulator-always-on;
259*53426f53SLuca Weiss			regulator-boot-on;
260*53426f53SLuca Weiss		};
261*53426f53SLuca Weiss
262*53426f53SLuca Weiss		pm8941_s2: s2 {
263*53426f53SLuca Weiss			regulator-min-microvolt = <2150000>;
264*53426f53SLuca Weiss			regulator-max-microvolt = <2150000>;
265*53426f53SLuca Weiss			regulator-boot-on;
266*53426f53SLuca Weiss		};
267*53426f53SLuca Weiss
268*53426f53SLuca Weiss		pm8941_s3: s3 {
269*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
270*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
271*53426f53SLuca Weiss			regulator-system-load = <154000>;
272*53426f53SLuca Weiss			regulator-always-on;
273*53426f53SLuca Weiss			regulator-boot-on;
274*53426f53SLuca Weiss		};
275*53426f53SLuca Weiss
276*53426f53SLuca Weiss		pm8941_s4: s4 {
277*53426f53SLuca Weiss			regulator-min-microvolt = <5000000>;
278*53426f53SLuca Weiss			regulator-max-microvolt = <5000000>;
279*53426f53SLuca Weiss		};
280*53426f53SLuca Weiss
281*53426f53SLuca Weiss		pm8941_l1: l1 {
282*53426f53SLuca Weiss			regulator-min-microvolt = <1225000>;
283*53426f53SLuca Weiss			regulator-max-microvolt = <1225000>;
284*53426f53SLuca Weiss			regulator-always-on;
285*53426f53SLuca Weiss			regulator-boot-on;
286*53426f53SLuca Weiss		};
287*53426f53SLuca Weiss
288*53426f53SLuca Weiss		pm8941_l2: l2 {
289*53426f53SLuca Weiss			regulator-min-microvolt = <1200000>;
290*53426f53SLuca Weiss			regulator-max-microvolt = <1200000>;
291*53426f53SLuca Weiss		};
292*53426f53SLuca Weiss
293*53426f53SLuca Weiss		pm8941_l3: l3 {
294*53426f53SLuca Weiss			regulator-min-microvolt = <1200000>;
295*53426f53SLuca Weiss			regulator-max-microvolt = <1200000>;
296*53426f53SLuca Weiss		};
297*53426f53SLuca Weiss
298*53426f53SLuca Weiss		pm8941_l4: l4 {
299*53426f53SLuca Weiss			regulator-min-microvolt = <1225000>;
300*53426f53SLuca Weiss			regulator-max-microvolt = <1225000>;
301*53426f53SLuca Weiss		};
302*53426f53SLuca Weiss
303*53426f53SLuca Weiss		pm8941_l5: l5 {
304*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
305*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
306*53426f53SLuca Weiss		};
307*53426f53SLuca Weiss
308*53426f53SLuca Weiss		pm8941_l6: l6 {
309*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
310*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
311*53426f53SLuca Weiss			regulator-boot-on;
312*53426f53SLuca Weiss		};
313*53426f53SLuca Weiss
314*53426f53SLuca Weiss		pm8941_l7: l7 {
315*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
316*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
317*53426f53SLuca Weiss			regulator-boot-on;
318*53426f53SLuca Weiss		};
319*53426f53SLuca Weiss
320*53426f53SLuca Weiss		pm8941_l8: l8 {
321*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
322*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
323*53426f53SLuca Weiss		};
324*53426f53SLuca Weiss
325*53426f53SLuca Weiss		pm8941_l9: l9 {
326*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
327*53426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
328*53426f53SLuca Weiss		};
329*53426f53SLuca Weiss
330*53426f53SLuca Weiss		pm8941_l12: l12 {
331*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
332*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
333*53426f53SLuca Weiss			regulator-always-on;
334*53426f53SLuca Weiss			regulator-boot-on;
335*53426f53SLuca Weiss		};
336*53426f53SLuca Weiss
337*53426f53SLuca Weiss		pm8941_l13: l13 {
338*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
339*53426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
340*53426f53SLuca Weiss			regulator-boot-on;
341*53426f53SLuca Weiss		};
342*53426f53SLuca Weiss
343*53426f53SLuca Weiss		pm8941_l14: l14 {
344*53426f53SLuca Weiss			regulator-min-microvolt = <1800000>;
345*53426f53SLuca Weiss			regulator-max-microvolt = <1800000>;
346*53426f53SLuca Weiss		};
347*53426f53SLuca Weiss
348*53426f53SLuca Weiss		pm8941_l15: l15 {
349*53426f53SLuca Weiss			regulator-min-microvolt = <2050000>;
350*53426f53SLuca Weiss			regulator-max-microvolt = <2050000>;
351*53426f53SLuca Weiss		};
352*53426f53SLuca Weiss
353*53426f53SLuca Weiss		pm8941_l16: l16 {
354*53426f53SLuca Weiss			regulator-min-microvolt = <2700000>;
355*53426f53SLuca Weiss			regulator-max-microvolt = <2700000>;
356*53426f53SLuca Weiss		};
357*53426f53SLuca Weiss
358*53426f53SLuca Weiss		pm8941_l17: l17 {
359*53426f53SLuca Weiss			regulator-min-microvolt = <2700000>;
360*53426f53SLuca Weiss			regulator-max-microvolt = <2700000>;
361*53426f53SLuca Weiss		};
362*53426f53SLuca Weiss
363*53426f53SLuca Weiss		pm8941_l18: l18 {
364*53426f53SLuca Weiss			regulator-min-microvolt = <2850000>;
365*53426f53SLuca Weiss			regulator-max-microvolt = <2850000>;
366*53426f53SLuca Weiss		};
367*53426f53SLuca Weiss
368*53426f53SLuca Weiss		pm8941_l20: l20 {
369*53426f53SLuca Weiss			regulator-min-microvolt = <2950000>;
370*53426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
371*53426f53SLuca Weiss			regulator-system-load = <500000>;
372*53426f53SLuca Weiss			regulator-allow-set-load;
373*53426f53SLuca Weiss			regulator-boot-on;
374*53426f53SLuca Weiss		};
375*53426f53SLuca Weiss
376*53426f53SLuca Weiss		pm8941_l21: l21 {
377*53426f53SLuca Weiss			regulator-min-microvolt = <2950000>;
378*53426f53SLuca Weiss			regulator-max-microvolt = <2950000>;
379*53426f53SLuca Weiss			regulator-boot-on;
380*53426f53SLuca Weiss		};
381*53426f53SLuca Weiss
382*53426f53SLuca Weiss		pm8941_l22: l22 {
383*53426f53SLuca Weiss			regulator-min-microvolt = <3000000>;
384*53426f53SLuca Weiss			regulator-max-microvolt = <3000000>;
385*53426f53SLuca Weiss		};
386*53426f53SLuca Weiss
387*53426f53SLuca Weiss		pm8941_l23: l23 {
388*53426f53SLuca Weiss			regulator-min-microvolt = <2800000>;
389*53426f53SLuca Weiss			regulator-max-microvolt = <2800000>;
390*53426f53SLuca Weiss		};
391*53426f53SLuca Weiss
392*53426f53SLuca Weiss		pm8941_l24: l24 {
393*53426f53SLuca Weiss			regulator-min-microvolt = <3075000>;
394*53426f53SLuca Weiss			regulator-max-microvolt = <3075000>;
395*53426f53SLuca Weiss			regulator-boot-on;
396*53426f53SLuca Weiss		};
397*53426f53SLuca Weiss
398*53426f53SLuca Weiss		pm8941_lvs3: lvs3 {};
399*53426f53SLuca Weiss	};
400*53426f53SLuca Weiss};
401*53426f53SLuca Weiss
402*53426f53SLuca Weiss&sdhc_1 {
403*53426f53SLuca Weiss	vmmc-supply = <&pm8941_l20>;
404*53426f53SLuca Weiss	vqmmc-supply = <&pm8941_s3>;
405*53426f53SLuca Weiss
406*53426f53SLuca Weiss	pinctrl-0 = <&sdc1_on>;
407*53426f53SLuca Weiss	pinctrl-1 = <&sdc1_off>;
408*53426f53SLuca Weiss	pinctrl-names = "default", "sleep";
409*53426f53SLuca Weiss
410*53426f53SLuca Weiss	status = "okay";
411*53426f53SLuca Weiss};
412*53426f53SLuca Weiss
413*53426f53SLuca Weiss&sdhc_2 {
414*53426f53SLuca Weiss	vmmc-supply = <&pm8941_l21>;
415*53426f53SLuca Weiss	vqmmc-supply = <&pm8941_l13>;
416*53426f53SLuca Weiss
417*53426f53SLuca Weiss	cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
418*53426f53SLuca Weiss
419*53426f53SLuca Weiss	pinctrl-0 = <&sdc2_on>;
420*53426f53SLuca Weiss	pinctrl-1 = <&sdc2_off>;
421*53426f53SLuca Weiss	pinctrl-names = "default", "sleep";
422*53426f53SLuca Weiss
423*53426f53SLuca Weiss	status = "okay";
424*53426f53SLuca Weiss};
425*53426f53SLuca Weiss
426*53426f53SLuca Weiss&sdhc_3 {
427*53426f53SLuca Weiss	max-frequency = <100000000>;
428*53426f53SLuca Weiss	vmmc-supply = <&vreg_wlan>;
429*53426f53SLuca Weiss	non-removable;
430*53426f53SLuca Weiss
431*53426f53SLuca Weiss	pinctrl-0 = <&sdc3_on>;
432*53426f53SLuca Weiss	pinctrl-names = "default";
433*53426f53SLuca Weiss
434*53426f53SLuca Weiss	status = "okay";
435*53426f53SLuca Weiss
436*53426f53SLuca Weiss	wifi@1 {
437*53426f53SLuca Weiss		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
438*53426f53SLuca Weiss		reg = <1>;
439*53426f53SLuca Weiss
440*53426f53SLuca Weiss		brcm,drive-strength = <10>;
441*53426f53SLuca Weiss
442*53426f53SLuca Weiss		pinctrl-0 = <&wlan_sleep_clk_pin>;
443*53426f53SLuca Weiss		pinctrl-names = "default";
444*53426f53SLuca Weiss	};
445*53426f53SLuca Weiss};
446*53426f53SLuca Weiss
447*53426f53SLuca Weiss&tlmm {
448*53426f53SLuca Weiss	sdc1_on: sdc1-on-state {
449*53426f53SLuca Weiss		clk-pins {
450*53426f53SLuca Weiss			pins = "sdc1_clk";
451*53426f53SLuca Weiss			drive-strength = <16>;
452*53426f53SLuca Weiss			bias-disable;
453*53426f53SLuca Weiss		};
454*53426f53SLuca Weiss
455*53426f53SLuca Weiss		cmd-data-pins {
456*53426f53SLuca Weiss			pins = "sdc1_cmd", "sdc1_data";
457*53426f53SLuca Weiss			drive-strength = <10>;
458*53426f53SLuca Weiss			bias-pull-up;
459*53426f53SLuca Weiss		};
460*53426f53SLuca Weiss	};
461*53426f53SLuca Weiss
462*53426f53SLuca Weiss	sdc2_on: sdc2-on-state {
463*53426f53SLuca Weiss		clk-pins {
464*53426f53SLuca Weiss			pins = "sdc2_clk";
465*53426f53SLuca Weiss			drive-strength = <6>;
466*53426f53SLuca Weiss			bias-disable;
467*53426f53SLuca Weiss		};
468*53426f53SLuca Weiss
469*53426f53SLuca Weiss		cmd-data-pins {
470*53426f53SLuca Weiss			pins = "sdc2_cmd", "sdc2_data";
471*53426f53SLuca Weiss			drive-strength = <6>;
472*53426f53SLuca Weiss			bias-pull-up;
473*53426f53SLuca Weiss		};
474*53426f53SLuca Weiss
475*53426f53SLuca Weiss		cd-pins {
476*53426f53SLuca Weiss			pins = "gpio62";
477*53426f53SLuca Weiss			function = "gpio";
478*53426f53SLuca Weiss			drive-strength = <2>;
479*53426f53SLuca Weiss			bias-disable;
480*53426f53SLuca Weiss		};
481*53426f53SLuca Weiss	};
482*53426f53SLuca Weiss
483*53426f53SLuca Weiss	sdc3_on: sdc3-on-state {
484*53426f53SLuca Weiss		clk-pins {
485*53426f53SLuca Weiss			pins = "gpio40";
486*53426f53SLuca Weiss			function = "sdc3";
487*53426f53SLuca Weiss			drive-strength = <10>;
488*53426f53SLuca Weiss			bias-disable;
489*53426f53SLuca Weiss		};
490*53426f53SLuca Weiss
491*53426f53SLuca Weiss		cmd-pins {
492*53426f53SLuca Weiss			pins = "gpio39";
493*53426f53SLuca Weiss			function = "sdc3";
494*53426f53SLuca Weiss			drive-strength = <10>;
495*53426f53SLuca Weiss			bias-pull-up;
496*53426f53SLuca Weiss		};
497*53426f53SLuca Weiss
498*53426f53SLuca Weiss		data-pins {
499*53426f53SLuca Weiss			pins = "gpio35", "gpio36", "gpio37", "gpio38";
500*53426f53SLuca Weiss			function = "sdc3";
501*53426f53SLuca Weiss			drive-strength = <10>;
502*53426f53SLuca Weiss			bias-pull-up;
503*53426f53SLuca Weiss		};
504*53426f53SLuca Weiss	};
505*53426f53SLuca Weiss
506*53426f53SLuca Weiss	ts_int_pin: ts-int-pin-state {
507*53426f53SLuca Weiss		pins = "gpio86";
508*53426f53SLuca Weiss		function = "gpio";
509*53426f53SLuca Weiss		drive-strength = <2>;
510*53426f53SLuca Weiss		bias-disable;
511*53426f53SLuca Weiss	};
512*53426f53SLuca Weiss};
513*53426f53SLuca Weiss
514*53426f53SLuca Weiss&usb {
515*53426f53SLuca Weiss	phys = <&usb_hs1_phy>;
516*53426f53SLuca Weiss	phy-select = <&tcsr 0xb000 0>;
517*53426f53SLuca Weiss	extcon = <&smbb>, <&usb_id>;
518*53426f53SLuca Weiss	vbus-supply = <&chg_otg>;
519*53426f53SLuca Weiss
520*53426f53SLuca Weiss	hnp-disable;
521*53426f53SLuca Weiss	srp-disable;
522*53426f53SLuca Weiss	adp-disable;
523*53426f53SLuca Weiss
524*53426f53SLuca Weiss	status = "okay";
525*53426f53SLuca Weiss};
526*53426f53SLuca Weiss
527*53426f53SLuca Weiss&usb_hs1_phy {
528*53426f53SLuca Weiss	v1p8-supply = <&pm8941_l6>;
529*53426f53SLuca Weiss	v3p3-supply = <&pm8941_l24>;
530*53426f53SLuca Weiss
531*53426f53SLuca Weiss	extcon = <&smbb>;
532*53426f53SLuca Weiss	qcom,init-seq = /bits/ 8 <0x1 0x64>;
533*53426f53SLuca Weiss
534*53426f53SLuca Weiss	status = "okay";
535*53426f53SLuca Weiss};
536