1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2*724ba675SRob Herring#include "qcom-msm8974.dtsi"
3*724ba675SRob Herring#include "qcom-pm8841.dtsi"
4*724ba675SRob Herring#include "qcom-pm8941.dtsi"
5*724ba675SRob Herring#include <dt-bindings/input/input.h>
6*724ba675SRob Herring#include <dt-bindings/leds/common.h>
7*724ba675SRob Herring#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
8*724ba675SRob Herring
9*724ba675SRob Herring/ {
10*724ba675SRob Herring	model = "LGE MSM 8974 HAMMERHEAD";
11*724ba675SRob Herring	compatible = "lge,hammerhead", "qcom,msm8974";
12*724ba675SRob Herring	chassis-type = "handset";
13*724ba675SRob Herring
14*724ba675SRob Herring	aliases {
15*724ba675SRob Herring		serial0 = &blsp1_uart1;
16*724ba675SRob Herring		serial1 = &blsp2_uart4;
17*724ba675SRob Herring	};
18*724ba675SRob Herring
19*724ba675SRob Herring	chosen {
20*724ba675SRob Herring		stdout-path = "serial0:115200n8";
21*724ba675SRob Herring	};
22*724ba675SRob Herring
23*724ba675SRob Herring	gpio-keys {
24*724ba675SRob Herring		compatible = "gpio-keys";
25*724ba675SRob Herring
26*724ba675SRob Herring		pinctrl-names = "default";
27*724ba675SRob Herring		pinctrl-0 = <&gpio_keys_pin_a>;
28*724ba675SRob Herring
29*724ba675SRob Herring		key-volume-up {
30*724ba675SRob Herring			label = "volume_up";
31*724ba675SRob Herring			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
32*724ba675SRob Herring			linux,input-type = <1>;
33*724ba675SRob Herring			linux,code = <KEY_VOLUMEUP>;
34*724ba675SRob Herring		};
35*724ba675SRob Herring
36*724ba675SRob Herring		key-volume-down {
37*724ba675SRob Herring			label = "volume_down";
38*724ba675SRob Herring			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
39*724ba675SRob Herring			linux,input-type = <1>;
40*724ba675SRob Herring			linux,code = <KEY_VOLUMEDOWN>;
41*724ba675SRob Herring		};
42*724ba675SRob Herring	};
43*724ba675SRob Herring
44*724ba675SRob Herring	clk_pwm: pwm {
45*724ba675SRob Herring		compatible = "clk-pwm";
46*724ba675SRob Herring		clocks = <&mmcc CAMSS_GP1_CLK>;
47*724ba675SRob Herring
48*724ba675SRob Herring		pinctrl-0 = <&vibrator_pin>;
49*724ba675SRob Herring		pinctrl-names = "default";
50*724ba675SRob Herring
51*724ba675SRob Herring		#pwm-cells = <2>;
52*724ba675SRob Herring	};
53*724ba675SRob Herring
54*724ba675SRob Herring	vibrator {
55*724ba675SRob Herring		compatible = "pwm-vibrator";
56*724ba675SRob Herring		pwms = <&clk_pwm 0 100000>;
57*724ba675SRob Herring		pwm-names = "enable";
58*724ba675SRob Herring
59*724ba675SRob Herring		vcc-supply = <&pm8941_l19>;
60*724ba675SRob Herring		enable-gpios = <&tlmm 60 GPIO_ACTIVE_HIGH>;
61*724ba675SRob Herring	};
62*724ba675SRob Herring
63*724ba675SRob Herring	vreg_wlan: wlan-regulator {
64*724ba675SRob Herring		compatible = "regulator-fixed";
65*724ba675SRob Herring
66*724ba675SRob Herring		regulator-name = "wl-reg";
67*724ba675SRob Herring		regulator-min-microvolt = <3300000>;
68*724ba675SRob Herring		regulator-max-microvolt = <3300000>;
69*724ba675SRob Herring
70*724ba675SRob Herring		gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>;
71*724ba675SRob Herring		enable-active-high;
72*724ba675SRob Herring
73*724ba675SRob Herring		pinctrl-names = "default";
74*724ba675SRob Herring		pinctrl-0 = <&wlan_regulator_pin>;
75*724ba675SRob Herring	};
76*724ba675SRob Herring};
77*724ba675SRob Herring
78*724ba675SRob Herring&blsp1_i2c1 {
79*724ba675SRob Herring	status = "okay";
80*724ba675SRob Herring	clock-frequency = <100000>;
81*724ba675SRob Herring
82*724ba675SRob Herring	charger: bq24192@6b {
83*724ba675SRob Herring		compatible = "ti,bq24192";
84*724ba675SRob Herring		reg = <0x6b>;
85*724ba675SRob Herring		interrupts-extended = <&spmi_bus 0 0xd5 0 IRQ_TYPE_EDGE_FALLING>;
86*724ba675SRob Herring
87*724ba675SRob Herring		omit-battery-class;
88*724ba675SRob Herring
89*724ba675SRob Herring		usb_otg_vbus: usb-otg-vbus { };
90*724ba675SRob Herring	};
91*724ba675SRob Herring
92*724ba675SRob Herring	fuelgauge: max17048@36 {
93*724ba675SRob Herring		compatible = "maxim,max17048";
94*724ba675SRob Herring		reg = <0x36>;
95*724ba675SRob Herring
96*724ba675SRob Herring		maxim,double-soc;
97*724ba675SRob Herring		maxim,rcomp = /bits/ 8 <0x4d>;
98*724ba675SRob Herring
99*724ba675SRob Herring		interrupt-parent = <&tlmm>;
100*724ba675SRob Herring		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
101*724ba675SRob Herring
102*724ba675SRob Herring		pinctrl-names = "default";
103*724ba675SRob Herring		pinctrl-0 = <&fuelgauge_pin>;
104*724ba675SRob Herring
105*724ba675SRob Herring		maxim,alert-low-soc-level = <2>;
106*724ba675SRob Herring	};
107*724ba675SRob Herring};
108*724ba675SRob Herring
109*724ba675SRob Herring&blsp1_i2c2 {
110*724ba675SRob Herring	status = "okay";
111*724ba675SRob Herring	clock-frequency = <355000>;
112*724ba675SRob Herring
113*724ba675SRob Herring	synaptics@70 {
114*724ba675SRob Herring		compatible = "syna,rmi4-i2c";
115*724ba675SRob Herring		reg = <0x70>;
116*724ba675SRob Herring
117*724ba675SRob Herring		interrupts-extended = <&tlmm 5 IRQ_TYPE_EDGE_FALLING>;
118*724ba675SRob Herring		vdd-supply = <&pm8941_l22>;
119*724ba675SRob Herring		vio-supply = <&pm8941_lvs3>;
120*724ba675SRob Herring
121*724ba675SRob Herring		pinctrl-names = "default";
122*724ba675SRob Herring		pinctrl-0 = <&touch_pin>;
123*724ba675SRob Herring
124*724ba675SRob Herring		#address-cells = <1>;
125*724ba675SRob Herring		#size-cells = <0>;
126*724ba675SRob Herring
127*724ba675SRob Herring		rmi4-f01@1 {
128*724ba675SRob Herring			reg = <0x1>;
129*724ba675SRob Herring			syna,nosleep-mode = <1>;
130*724ba675SRob Herring		};
131*724ba675SRob Herring
132*724ba675SRob Herring		rmi4-f12@12 {
133*724ba675SRob Herring			reg = <0x12>;
134*724ba675SRob Herring			syna,sensor-type = <1>;
135*724ba675SRob Herring		};
136*724ba675SRob Herring	};
137*724ba675SRob Herring};
138*724ba675SRob Herring
139*724ba675SRob Herring&blsp1_i2c3 {
140*724ba675SRob Herring	status = "okay";
141*724ba675SRob Herring	clock-frequency = <100000>;
142*724ba675SRob Herring
143*724ba675SRob Herring	avago_apds993@39 {
144*724ba675SRob Herring		compatible = "avago,apds9930";
145*724ba675SRob Herring		reg = <0x39>;
146*724ba675SRob Herring		interrupts-extended = <&tlmm 61 IRQ_TYPE_EDGE_FALLING>;
147*724ba675SRob Herring		vdd-supply = <&pm8941_l17>;
148*724ba675SRob Herring		vddio-supply = <&pm8941_lvs1>;
149*724ba675SRob Herring		led-max-microamp = <100000>;
150*724ba675SRob Herring		amstaos,proximity-diodes = <0>;
151*724ba675SRob Herring	};
152*724ba675SRob Herring};
153*724ba675SRob Herring
154*724ba675SRob Herring&blsp2_i2c5 {
155*724ba675SRob Herring	status = "okay";
156*724ba675SRob Herring	clock-frequency = <355000>;
157*724ba675SRob Herring
158*724ba675SRob Herring	led-controller@38 {
159*724ba675SRob Herring		compatible = "ti,lm3630a";
160*724ba675SRob Herring		status = "okay";
161*724ba675SRob Herring		reg = <0x38>;
162*724ba675SRob Herring
163*724ba675SRob Herring		#address-cells = <1>;
164*724ba675SRob Herring		#size-cells = <0>;
165*724ba675SRob Herring
166*724ba675SRob Herring		led@0 {
167*724ba675SRob Herring			reg = <0>;
168*724ba675SRob Herring			led-sources = <0 1>;
169*724ba675SRob Herring			label = "lcd-backlight";
170*724ba675SRob Herring			default-brightness = <200>;
171*724ba675SRob Herring		};
172*724ba675SRob Herring	};
173*724ba675SRob Herring};
174*724ba675SRob Herring
175*724ba675SRob Herring&blsp2_i2c6 {
176*724ba675SRob Herring	status = "okay";
177*724ba675SRob Herring	clock-frequency = <100000>;
178*724ba675SRob Herring
179*724ba675SRob Herring	mpu6515@68 {
180*724ba675SRob Herring		compatible = "invensense,mpu6515";
181*724ba675SRob Herring		reg = <0x68>;
182*724ba675SRob Herring		interrupts-extended = <&tlmm 73 IRQ_TYPE_EDGE_FALLING>;
183*724ba675SRob Herring		vddio-supply = <&pm8941_lvs1>;
184*724ba675SRob Herring
185*724ba675SRob Herring		pinctrl-names = "default";
186*724ba675SRob Herring		pinctrl-0 = <&mpu6515_pin>;
187*724ba675SRob Herring
188*724ba675SRob Herring		mount-matrix = "0", "-1", "0",
189*724ba675SRob Herring				"-1", "0", "0",
190*724ba675SRob Herring				"0", "0", "1";
191*724ba675SRob Herring
192*724ba675SRob Herring		i2c-gate {
193*724ba675SRob Herring			#address-cells = <1>;
194*724ba675SRob Herring			#size-cells = <0>;
195*724ba675SRob Herring			ak8963@f {
196*724ba675SRob Herring				compatible = "asahi-kasei,ak8963";
197*724ba675SRob Herring				reg = <0x0f>;
198*724ba675SRob Herring				gpios = <&tlmm 67 GPIO_ACTIVE_HIGH>;
199*724ba675SRob Herring				vid-supply = <&pm8941_lvs1>;
200*724ba675SRob Herring				vdd-supply = <&pm8941_l17>;
201*724ba675SRob Herring			};
202*724ba675SRob Herring
203*724ba675SRob Herring			bmp280@76 {
204*724ba675SRob Herring				compatible = "bosch,bmp280";
205*724ba675SRob Herring				reg = <0x76>;
206*724ba675SRob Herring				vdda-supply = <&pm8941_lvs1>;
207*724ba675SRob Herring				vddd-supply = <&pm8941_l17>;
208*724ba675SRob Herring			};
209*724ba675SRob Herring		};
210*724ba675SRob Herring	};
211*724ba675SRob Herring};
212*724ba675SRob Herring
213*724ba675SRob Herring&blsp1_uart1 {
214*724ba675SRob Herring	status = "okay";
215*724ba675SRob Herring};
216*724ba675SRob Herring
217*724ba675SRob Herring&blsp2_uart4 {
218*724ba675SRob Herring	status = "okay";
219*724ba675SRob Herring
220*724ba675SRob Herring	bluetooth {
221*724ba675SRob Herring		compatible = "brcm,bcm43438-bt";
222*724ba675SRob Herring		max-speed = <3000000>;
223*724ba675SRob Herring
224*724ba675SRob Herring		pinctrl-names = "default";
225*724ba675SRob Herring		pinctrl-0 = <&bt_pin>;
226*724ba675SRob Herring
227*724ba675SRob Herring		host-wakeup-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
228*724ba675SRob Herring		device-wakeup-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>;
229*724ba675SRob Herring		shutdown-gpios = <&tlmm 41 GPIO_ACTIVE_HIGH>;
230*724ba675SRob Herring	};
231*724ba675SRob Herring};
232*724ba675SRob Herring
233*724ba675SRob Herring&mdss {
234*724ba675SRob Herring	status = "okay";
235*724ba675SRob Herring};
236*724ba675SRob Herring
237*724ba675SRob Herring&mdss_dsi0 {
238*724ba675SRob Herring	status = "okay";
239*724ba675SRob Herring
240*724ba675SRob Herring	vdda-supply = <&pm8941_l2>;
241*724ba675SRob Herring	vdd-supply = <&pm8941_lvs3>;
242*724ba675SRob Herring	vddio-supply = <&pm8941_l12>;
243*724ba675SRob Herring
244*724ba675SRob Herring	panel: panel@0 {
245*724ba675SRob Herring		reg = <0>;
246*724ba675SRob Herring		compatible = "lg,acx467akm-7";
247*724ba675SRob Herring
248*724ba675SRob Herring		pinctrl-names = "default";
249*724ba675SRob Herring		pinctrl-0 = <&panel_pin>;
250*724ba675SRob Herring
251*724ba675SRob Herring		port {
252*724ba675SRob Herring			panel_in: endpoint {
253*724ba675SRob Herring				remote-endpoint = <&mdss_dsi0_out>;
254*724ba675SRob Herring			};
255*724ba675SRob Herring		};
256*724ba675SRob Herring	};
257*724ba675SRob Herring};
258*724ba675SRob Herring
259*724ba675SRob Herring&mdss_dsi0_out {
260*724ba675SRob Herring	remote-endpoint = <&panel_in>;
261*724ba675SRob Herring	data-lanes = <0 1 2 3>;
262*724ba675SRob Herring};
263*724ba675SRob Herring
264*724ba675SRob Herring&mdss_dsi0_phy {
265*724ba675SRob Herring	status = "okay";
266*724ba675SRob Herring
267*724ba675SRob Herring	vddio-supply = <&pm8941_l12>;
268*724ba675SRob Herring};
269*724ba675SRob Herring
270*724ba675SRob Herring&pm8941_gpios {
271*724ba675SRob Herring	gpio_keys_pin_a: gpio-keys-active-state {
272*724ba675SRob Herring		pins = "gpio2", "gpio3";
273*724ba675SRob Herring		function = "normal";
274*724ba675SRob Herring
275*724ba675SRob Herring		bias-pull-up;
276*724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
277*724ba675SRob Herring	};
278*724ba675SRob Herring
279*724ba675SRob Herring	fuelgauge_pin: fuelgauge-int-state {
280*724ba675SRob Herring		pins = "gpio9";
281*724ba675SRob Herring		function = "normal";
282*724ba675SRob Herring
283*724ba675SRob Herring		bias-disable;
284*724ba675SRob Herring		input-enable;
285*724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
286*724ba675SRob Herring	};
287*724ba675SRob Herring
288*724ba675SRob Herring	wlan_sleep_clk_pin: wl-sleep-clk-state {
289*724ba675SRob Herring		pins = "gpio16";
290*724ba675SRob Herring		function = "func2";
291*724ba675SRob Herring
292*724ba675SRob Herring		output-high;
293*724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
294*724ba675SRob Herring	};
295*724ba675SRob Herring
296*724ba675SRob Herring	wlan_regulator_pin: wl-reg-active-state {
297*724ba675SRob Herring		pins = "gpio17";
298*724ba675SRob Herring		function = "normal";
299*724ba675SRob Herring
300*724ba675SRob Herring		bias-disable;
301*724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
302*724ba675SRob Herring	};
303*724ba675SRob Herring
304*724ba675SRob Herring	otg {
305*724ba675SRob Herring		gpio-hog;
306*724ba675SRob Herring		gpios = <35 GPIO_ACTIVE_HIGH>;
307*724ba675SRob Herring		output-high;
308*724ba675SRob Herring		line-name = "otg-gpio";
309*724ba675SRob Herring	};
310*724ba675SRob Herring};
311*724ba675SRob Herring
312*724ba675SRob Herring&pm8941_lpg {
313*724ba675SRob Herring	status = "okay";
314*724ba675SRob Herring
315*724ba675SRob Herring	qcom,power-source = <1>;
316*724ba675SRob Herring
317*724ba675SRob Herring	multi-led {
318*724ba675SRob Herring		color = <LED_COLOR_ID_RGB>;
319*724ba675SRob Herring		function = LED_FUNCTION_STATUS;
320*724ba675SRob Herring
321*724ba675SRob Herring		#address-cells = <1>;
322*724ba675SRob Herring		#size-cells = <0>;
323*724ba675SRob Herring
324*724ba675SRob Herring		led@7 {
325*724ba675SRob Herring			reg = <7>;
326*724ba675SRob Herring			color = <LED_COLOR_ID_RED>;
327*724ba675SRob Herring		};
328*724ba675SRob Herring
329*724ba675SRob Herring		led@6 {
330*724ba675SRob Herring			reg = <6>;
331*724ba675SRob Herring			color = <LED_COLOR_ID_GREEN>;
332*724ba675SRob Herring		};
333*724ba675SRob Herring
334*724ba675SRob Herring		led@5 {
335*724ba675SRob Herring			reg = <5>;
336*724ba675SRob Herring			color = <LED_COLOR_ID_BLUE>;
337*724ba675SRob Herring		};
338*724ba675SRob Herring	};
339*724ba675SRob Herring};
340*724ba675SRob Herring
341*724ba675SRob Herring&remoteproc_adsp {
342*724ba675SRob Herring	cx-supply = <&pm8841_s2>;
343*724ba675SRob Herring};
344*724ba675SRob Herring
345*724ba675SRob Herring&remoteproc_mss {
346*724ba675SRob Herring	cx-supply = <&pm8841_s2>;
347*724ba675SRob Herring	mss-supply = <&pm8841_s3>;
348*724ba675SRob Herring	mx-supply = <&pm8841_s1>;
349*724ba675SRob Herring	pll-supply = <&pm8941_l12>;
350*724ba675SRob Herring};
351*724ba675SRob Herring
352*724ba675SRob Herring&rpm_requests {
353*724ba675SRob Herring	regulators-0 {
354*724ba675SRob Herring		compatible = "qcom,rpm-pm8841-regulators";
355*724ba675SRob Herring
356*724ba675SRob Herring		pm8841_s1: s1 {
357*724ba675SRob Herring			regulator-min-microvolt = <675000>;
358*724ba675SRob Herring			regulator-max-microvolt = <1050000>;
359*724ba675SRob Herring		};
360*724ba675SRob Herring
361*724ba675SRob Herring		pm8841_s2: s2 {
362*724ba675SRob Herring			regulator-min-microvolt = <500000>;
363*724ba675SRob Herring			regulator-max-microvolt = <1050000>;
364*724ba675SRob Herring		};
365*724ba675SRob Herring
366*724ba675SRob Herring		pm8841_s3: s3 {
367*724ba675SRob Herring			regulator-min-microvolt = <1050000>;
368*724ba675SRob Herring			regulator-max-microvolt = <1050000>;
369*724ba675SRob Herring		};
370*724ba675SRob Herring
371*724ba675SRob Herring		pm8841_s4: s4 {
372*724ba675SRob Herring			regulator-min-microvolt = <815000>;
373*724ba675SRob Herring			regulator-max-microvolt = <900000>;
374*724ba675SRob Herring		};
375*724ba675SRob Herring	};
376*724ba675SRob Herring
377*724ba675SRob Herring	regulators-1 {
378*724ba675SRob Herring		compatible = "qcom,rpm-pm8941-regulators";
379*724ba675SRob Herring
380*724ba675SRob Herring		vdd_l1_l3-supply = <&pm8941_s1>;
381*724ba675SRob Herring		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
382*724ba675SRob Herring		vdd_l4_l11-supply = <&pm8941_s1>;
383*724ba675SRob Herring		vdd_l5_l7-supply = <&pm8941_s2>;
384*724ba675SRob Herring		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
385*724ba675SRob Herring		vdd_l8_l16_l18_l19-supply = <&vreg_vph_pwr>;
386*724ba675SRob Herring		vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
387*724ba675SRob Herring		vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
388*724ba675SRob Herring		vdd_l21-supply = <&vreg_boost>;
389*724ba675SRob Herring
390*724ba675SRob Herring		pm8941_s1: s1 {
391*724ba675SRob Herring			regulator-min-microvolt = <1300000>;
392*724ba675SRob Herring			regulator-max-microvolt = <1300000>;
393*724ba675SRob Herring			regulator-always-on;
394*724ba675SRob Herring			regulator-boot-on;
395*724ba675SRob Herring		};
396*724ba675SRob Herring
397*724ba675SRob Herring		pm8941_s2: s2 {
398*724ba675SRob Herring			regulator-min-microvolt = <2150000>;
399*724ba675SRob Herring			regulator-max-microvolt = <2150000>;
400*724ba675SRob Herring			regulator-boot-on;
401*724ba675SRob Herring		};
402*724ba675SRob Herring
403*724ba675SRob Herring		pm8941_s3: s3 {
404*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
405*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
406*724ba675SRob Herring			regulator-always-on;
407*724ba675SRob Herring			regulator-boot-on;
408*724ba675SRob Herring		};
409*724ba675SRob Herring
410*724ba675SRob Herring		pm8941_l1: l1 {
411*724ba675SRob Herring			regulator-min-microvolt = <1225000>;
412*724ba675SRob Herring			regulator-max-microvolt = <1225000>;
413*724ba675SRob Herring			regulator-always-on;
414*724ba675SRob Herring			regulator-boot-on;
415*724ba675SRob Herring		};
416*724ba675SRob Herring
417*724ba675SRob Herring		pm8941_l2: l2 {
418*724ba675SRob Herring			regulator-min-microvolt = <1200000>;
419*724ba675SRob Herring			regulator-max-microvolt = <1200000>;
420*724ba675SRob Herring		};
421*724ba675SRob Herring
422*724ba675SRob Herring		pm8941_l3: l3 {
423*724ba675SRob Herring			regulator-min-microvolt = <1225000>;
424*724ba675SRob Herring			regulator-max-microvolt = <1225000>;
425*724ba675SRob Herring		};
426*724ba675SRob Herring
427*724ba675SRob Herring		pm8941_l4: l4 {
428*724ba675SRob Herring			regulator-min-microvolt = <1225000>;
429*724ba675SRob Herring			regulator-max-microvolt = <1225000>;
430*724ba675SRob Herring		};
431*724ba675SRob Herring
432*724ba675SRob Herring		pm8941_l5: l5 {
433*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
434*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
435*724ba675SRob Herring		};
436*724ba675SRob Herring
437*724ba675SRob Herring		pm8941_l6: l6 {
438*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
439*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
440*724ba675SRob Herring			regulator-boot-on;
441*724ba675SRob Herring		};
442*724ba675SRob Herring
443*724ba675SRob Herring		pm8941_l7: l7 {
444*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
445*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
446*724ba675SRob Herring			regulator-boot-on;
447*724ba675SRob Herring		};
448*724ba675SRob Herring
449*724ba675SRob Herring		pm8941_l8: l8 {
450*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
451*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
452*724ba675SRob Herring		};
453*724ba675SRob Herring
454*724ba675SRob Herring		pm8941_l9: l9 {
455*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
456*724ba675SRob Herring			regulator-max-microvolt = <2950000>;
457*724ba675SRob Herring		};
458*724ba675SRob Herring
459*724ba675SRob Herring		pm8941_l10: l10 {
460*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
461*724ba675SRob Herring			regulator-max-microvolt = <2950000>;
462*724ba675SRob Herring		};
463*724ba675SRob Herring
464*724ba675SRob Herring		pm8941_l11: l11 {
465*724ba675SRob Herring			regulator-min-microvolt = <1300000>;
466*724ba675SRob Herring			regulator-max-microvolt = <1300000>;
467*724ba675SRob Herring		};
468*724ba675SRob Herring
469*724ba675SRob Herring		pm8941_l12: l12 {
470*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
471*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
472*724ba675SRob Herring			regulator-always-on;
473*724ba675SRob Herring			regulator-boot-on;
474*724ba675SRob Herring		};
475*724ba675SRob Herring
476*724ba675SRob Herring		pm8941_l13: l13 {
477*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
478*724ba675SRob Herring			regulator-max-microvolt = <2950000>;
479*724ba675SRob Herring			regulator-boot-on;
480*724ba675SRob Herring		};
481*724ba675SRob Herring
482*724ba675SRob Herring		pm8941_l14: l14 {
483*724ba675SRob Herring			regulator-min-microvolt = <1800000>;
484*724ba675SRob Herring			regulator-max-microvolt = <1800000>;
485*724ba675SRob Herring		};
486*724ba675SRob Herring
487*724ba675SRob Herring		pm8941_l15: l15 {
488*724ba675SRob Herring			regulator-min-microvolt = <2050000>;
489*724ba675SRob Herring			regulator-max-microvolt = <2050000>;
490*724ba675SRob Herring		};
491*724ba675SRob Herring
492*724ba675SRob Herring		pm8941_l16: l16 {
493*724ba675SRob Herring			regulator-min-microvolt = <2700000>;
494*724ba675SRob Herring			regulator-max-microvolt = <2700000>;
495*724ba675SRob Herring		};
496*724ba675SRob Herring
497*724ba675SRob Herring		pm8941_l17: l17 {
498*724ba675SRob Herring			regulator-min-microvolt = <2850000>;
499*724ba675SRob Herring			regulator-max-microvolt = <2850000>;
500*724ba675SRob Herring		};
501*724ba675SRob Herring
502*724ba675SRob Herring		pm8941_l18: l18 {
503*724ba675SRob Herring			regulator-min-microvolt = <2850000>;
504*724ba675SRob Herring			regulator-max-microvolt = <2850000>;
505*724ba675SRob Herring		};
506*724ba675SRob Herring
507*724ba675SRob Herring		pm8941_l19: l19 {
508*724ba675SRob Herring			regulator-min-microvolt = <3000000>;
509*724ba675SRob Herring			regulator-max-microvolt = <3300000>;
510*724ba675SRob Herring		};
511*724ba675SRob Herring
512*724ba675SRob Herring		pm8941_l20: l20 {
513*724ba675SRob Herring			regulator-min-microvolt = <2950000>;
514*724ba675SRob Herring			regulator-max-microvolt = <2950000>;
515*724ba675SRob Herring			regulator-system-load = <200000>;
516*724ba675SRob Herring			regulator-allow-set-load;
517*724ba675SRob Herring			regulator-boot-on;
518*724ba675SRob Herring		};
519*724ba675SRob Herring
520*724ba675SRob Herring		pm8941_l21: l21 {
521*724ba675SRob Herring			regulator-min-microvolt = <2950000>;
522*724ba675SRob Herring			regulator-max-microvolt = <2950000>;
523*724ba675SRob Herring			regulator-boot-on;
524*724ba675SRob Herring		};
525*724ba675SRob Herring
526*724ba675SRob Herring		pm8941_l22: l22 {
527*724ba675SRob Herring			regulator-min-microvolt = <3000000>;
528*724ba675SRob Herring			regulator-max-microvolt = <3300000>;
529*724ba675SRob Herring		};
530*724ba675SRob Herring
531*724ba675SRob Herring		pm8941_l23: l23 {
532*724ba675SRob Herring			regulator-min-microvolt = <3000000>;
533*724ba675SRob Herring			regulator-max-microvolt = <3000000>;
534*724ba675SRob Herring		};
535*724ba675SRob Herring
536*724ba675SRob Herring		pm8941_l24: l24 {
537*724ba675SRob Herring			regulator-min-microvolt = <3075000>;
538*724ba675SRob Herring			regulator-max-microvolt = <3075000>;
539*724ba675SRob Herring			regulator-boot-on;
540*724ba675SRob Herring		};
541*724ba675SRob Herring
542*724ba675SRob Herring		pm8941_lvs1: lvs1 {};
543*724ba675SRob Herring		pm8941_lvs3: lvs3 {};
544*724ba675SRob Herring	};
545*724ba675SRob Herring};
546*724ba675SRob Herring
547*724ba675SRob Herring&sdhc_1 {
548*724ba675SRob Herring	status = "okay";
549*724ba675SRob Herring
550*724ba675SRob Herring	vmmc-supply = <&pm8941_l20>;
551*724ba675SRob Herring	vqmmc-supply = <&pm8941_s3>;
552*724ba675SRob Herring
553*724ba675SRob Herring	pinctrl-names = "default", "sleep";
554*724ba675SRob Herring	pinctrl-0 = <&sdc1_on>;
555*724ba675SRob Herring	pinctrl-1 = <&sdc1_off>;
556*724ba675SRob Herring};
557*724ba675SRob Herring
558*724ba675SRob Herring&sdhc_2 {
559*724ba675SRob Herring	status = "okay";
560*724ba675SRob Herring
561*724ba675SRob Herring	max-frequency = <100000000>;
562*724ba675SRob Herring	vmmc-supply = <&vreg_wlan>;
563*724ba675SRob Herring	vqmmc-supply = <&pm8941_s3>;
564*724ba675SRob Herring	non-removable;
565*724ba675SRob Herring
566*724ba675SRob Herring	pinctrl-names = "default", "sleep";
567*724ba675SRob Herring	pinctrl-0 = <&sdc2_on>;
568*724ba675SRob Herring	pinctrl-1 = <&sdc2_off>;
569*724ba675SRob Herring
570*724ba675SRob Herring	bcrmf@1 {
571*724ba675SRob Herring		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
572*724ba675SRob Herring		reg = <1>;
573*724ba675SRob Herring
574*724ba675SRob Herring		brcm,drive-strength = <10>;
575*724ba675SRob Herring
576*724ba675SRob Herring		pinctrl-names = "default";
577*724ba675SRob Herring		pinctrl-0 = <&wlan_sleep_clk_pin>;
578*724ba675SRob Herring	};
579*724ba675SRob Herring};
580*724ba675SRob Herring
581*724ba675SRob Herring&tlmm {
582*724ba675SRob Herring	sdc1_on: sdc1-on-state {
583*724ba675SRob Herring		clk-pins {
584*724ba675SRob Herring			pins = "sdc1_clk";
585*724ba675SRob Herring			drive-strength = <16>;
586*724ba675SRob Herring			bias-disable;
587*724ba675SRob Herring		};
588*724ba675SRob Herring
589*724ba675SRob Herring		cmd-data-pins {
590*724ba675SRob Herring			pins = "sdc1_cmd", "sdc1_data";
591*724ba675SRob Herring			drive-strength = <10>;
592*724ba675SRob Herring			bias-pull-up;
593*724ba675SRob Herring		};
594*724ba675SRob Herring	};
595*724ba675SRob Herring
596*724ba675SRob Herring	sdc2_on: sdc2-on-state {
597*724ba675SRob Herring		clk-pins {
598*724ba675SRob Herring			pins = "sdc2_clk";
599*724ba675SRob Herring			drive-strength = <6>;
600*724ba675SRob Herring			bias-disable;
601*724ba675SRob Herring		};
602*724ba675SRob Herring
603*724ba675SRob Herring		cmd-data-pins {
604*724ba675SRob Herring			pins = "sdc2_cmd", "sdc2_data";
605*724ba675SRob Herring			drive-strength = <6>;
606*724ba675SRob Herring			bias-pull-up;
607*724ba675SRob Herring		};
608*724ba675SRob Herring	};
609*724ba675SRob Herring
610*724ba675SRob Herring	mpu6515_pin: mpu6515-state {
611*724ba675SRob Herring		pins = "gpio73";
612*724ba675SRob Herring		function = "gpio";
613*724ba675SRob Herring		bias-disable;
614*724ba675SRob Herring		input-enable;
615*724ba675SRob Herring	};
616*724ba675SRob Herring
617*724ba675SRob Herring	touch_pin: touch-state {
618*724ba675SRob Herring		int-pins {
619*724ba675SRob Herring			pins = "gpio5";
620*724ba675SRob Herring			function = "gpio";
621*724ba675SRob Herring
622*724ba675SRob Herring			drive-strength = <2>;
623*724ba675SRob Herring			bias-disable;
624*724ba675SRob Herring			input-enable;
625*724ba675SRob Herring		};
626*724ba675SRob Herring
627*724ba675SRob Herring		reset-pins {
628*724ba675SRob Herring			pins = "gpio8";
629*724ba675SRob Herring			function = "gpio";
630*724ba675SRob Herring
631*724ba675SRob Herring			drive-strength = <2>;
632*724ba675SRob Herring			bias-pull-up;
633*724ba675SRob Herring		};
634*724ba675SRob Herring	};
635*724ba675SRob Herring
636*724ba675SRob Herring	panel_pin: panel-state {
637*724ba675SRob Herring		pins = "gpio12";
638*724ba675SRob Herring		function = "mdp_vsync";
639*724ba675SRob Herring		drive-strength = <2>;
640*724ba675SRob Herring		bias-disable;
641*724ba675SRob Herring	};
642*724ba675SRob Herring
643*724ba675SRob Herring	bt_pin: bt-state {
644*724ba675SRob Herring		hostwake-pins {
645*724ba675SRob Herring			pins = "gpio42";
646*724ba675SRob Herring			function = "gpio";
647*724ba675SRob Herring		};
648*724ba675SRob Herring
649*724ba675SRob Herring		devwake-pins {
650*724ba675SRob Herring			pins = "gpio62";
651*724ba675SRob Herring			function = "gpio";
652*724ba675SRob Herring		};
653*724ba675SRob Herring
654*724ba675SRob Herring		shutdown-pins {
655*724ba675SRob Herring			pins = "gpio41";
656*724ba675SRob Herring			function = "gpio";
657*724ba675SRob Herring		};
658*724ba675SRob Herring	};
659*724ba675SRob Herring
660*724ba675SRob Herring	vibrator_pin: vibrator-state {
661*724ba675SRob Herring		core-pins {
662*724ba675SRob Herring			pins = "gpio27";
663*724ba675SRob Herring			function = "gp1_clk";
664*724ba675SRob Herring			drive-strength = <6>;
665*724ba675SRob Herring			bias-disable;
666*724ba675SRob Herring		};
667*724ba675SRob Herring
668*724ba675SRob Herring		enable-pins {
669*724ba675SRob Herring			pins = "gpio60";
670*724ba675SRob Herring			function = "gpio";
671*724ba675SRob Herring			drive-strength = <2>;
672*724ba675SRob Herring			bias-disable;
673*724ba675SRob Herring		};
674*724ba675SRob Herring	};
675*724ba675SRob Herring};
676*724ba675SRob Herring
677*724ba675SRob Herring&usb {
678*724ba675SRob Herring	status = "okay";
679*724ba675SRob Herring
680*724ba675SRob Herring	phys = <&usb_hs1_phy>;
681*724ba675SRob Herring	phy-select = <&tcsr 0xb000 0>;
682*724ba675SRob Herring
683*724ba675SRob Herring	extcon = <&charger>, <&usb_id>;
684*724ba675SRob Herring	vbus-supply = <&usb_otg_vbus>;
685*724ba675SRob Herring
686*724ba675SRob Herring	hnp-disable;
687*724ba675SRob Herring	srp-disable;
688*724ba675SRob Herring	adp-disable;
689*724ba675SRob Herring};
690*724ba675SRob Herring
691*724ba675SRob Herring&usb_hs1_phy {
692*724ba675SRob Herring	status = "okay";
693*724ba675SRob Herring
694*724ba675SRob Herring	v1p8-supply = <&pm8941_l6>;
695*724ba675SRob Herring	v3p3-supply = <&pm8941_l24>;
696*724ba675SRob Herring
697*724ba675SRob Herring	qcom,init-seq = /bits/ 8 <0x1 0x64>;
698*724ba675SRob Herring};
699