xref: /linux/arch/arm/boot/dts/qcom/qcom-msm8974pro-sony-xperia-shinano-castor.dts (revision c9c8179d0ccdf024ce467b4c9cf5de8821bc02cb)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring#include "qcom-msm8974pro.dtsi"
3455a4c46SDmitry Baryshkov#include "pm8841.dtsi"
4455a4c46SDmitry Baryshkov#include "pm8941.dtsi"
5724ba675SRob Herring#include <dt-bindings/input/input.h>
6724ba675SRob Herring#include <dt-bindings/leds/common.h>
7724ba675SRob Herring#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
8724ba675SRob Herring
9724ba675SRob Herring/ {
10724ba675SRob Herring	model = "Sony Xperia Z2 Tablet";
11724ba675SRob Herring	compatible = "sony,xperia-castor", "qcom,msm8974pro", "qcom,msm8974";
12724ba675SRob Herring	chassis-type = "tablet";
13724ba675SRob Herring
14724ba675SRob Herring	aliases {
15724ba675SRob Herring		serial0 = &blsp1_uart2;
16724ba675SRob Herring		serial1 = &blsp2_uart1;
17724ba675SRob Herring	};
18724ba675SRob Herring
19724ba675SRob Herring	chosen {
20724ba675SRob Herring		stdout-path = "serial0:115200n8";
21724ba675SRob Herring	};
22724ba675SRob Herring
23724ba675SRob Herring	gpio-keys {
24724ba675SRob Herring		compatible = "gpio-keys";
25724ba675SRob Herring
26724ba675SRob Herring		pinctrl-names = "default";
27724ba675SRob Herring		pinctrl-0 = <&gpio_keys_pin_a>;
28724ba675SRob Herring
29724ba675SRob Herring		key-volume-down {
30724ba675SRob Herring			label = "volume_down";
31724ba675SRob Herring			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
32724ba675SRob Herring			linux,input-type = <1>;
33724ba675SRob Herring			linux,code = <KEY_VOLUMEDOWN>;
34724ba675SRob Herring		};
35724ba675SRob Herring
36724ba675SRob Herring		key-camera-snapshot {
37724ba675SRob Herring			label = "camera_snapshot";
38724ba675SRob Herring			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
39724ba675SRob Herring			linux,input-type = <1>;
40724ba675SRob Herring			linux,code = <KEY_CAMERA>;
41724ba675SRob Herring		};
42724ba675SRob Herring
43724ba675SRob Herring		key-camera-focus {
44724ba675SRob Herring			label = "camera_focus";
45724ba675SRob Herring			gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>;
46724ba675SRob Herring			linux,input-type = <1>;
47724ba675SRob Herring			linux,code = <KEY_CAMERA_FOCUS>;
48724ba675SRob Herring		};
49724ba675SRob Herring
50724ba675SRob Herring		key-volume-up {
51724ba675SRob Herring			label = "volume_up";
52724ba675SRob Herring			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
53724ba675SRob Herring			linux,input-type = <1>;
54724ba675SRob Herring			linux,code = <KEY_VOLUMEUP>;
55724ba675SRob Herring		};
56724ba675SRob Herring	};
57724ba675SRob Herring
58724ba675SRob Herring	vreg_bl_vddio: lcd-backlight-vddio {
59724ba675SRob Herring		compatible = "regulator-fixed";
60724ba675SRob Herring		regulator-name = "vreg_bl_vddio";
61724ba675SRob Herring		regulator-min-microvolt = <3150000>;
62724ba675SRob Herring		regulator-max-microvolt = <3150000>;
63724ba675SRob Herring
64724ba675SRob Herring		gpio = <&tlmm 69 0>;
65724ba675SRob Herring		enable-active-high;
66724ba675SRob Herring
67724ba675SRob Herring		vin-supply = <&pm8941_s3>;
68724ba675SRob Herring		startup-delay-us = <70000>;
69724ba675SRob Herring
70724ba675SRob Herring		pinctrl-names = "default";
71724ba675SRob Herring		pinctrl-0 = <&lcd_backlight_en_pin_a>;
72724ba675SRob Herring	};
73724ba675SRob Herring
74724ba675SRob Herring	vreg_vsp: lcd-dcdc-regulator {
75724ba675SRob Herring		compatible = "regulator-fixed";
76724ba675SRob Herring		regulator-name = "vreg_vsp";
77724ba675SRob Herring		regulator-min-microvolt = <5600000>;
78724ba675SRob Herring		regulator-max-microvolt = <5600000>;
79724ba675SRob Herring
80724ba675SRob Herring		gpio = <&pm8941_gpios 20 GPIO_ACTIVE_HIGH>;
81724ba675SRob Herring		enable-active-high;
82724ba675SRob Herring
83724ba675SRob Herring		pinctrl-names = "default";
84724ba675SRob Herring		pinctrl-0 = <&lcd_dcdc_en_pin_a>;
85724ba675SRob Herring	};
86724ba675SRob Herring
8774eafc5fSDmitry Baryshkov	vreg_boost: vreg-boost {
8874eafc5fSDmitry Baryshkov		compatible = "regulator-fixed";
8974eafc5fSDmitry Baryshkov
9074eafc5fSDmitry Baryshkov		regulator-name = "vreg-boost";
9174eafc5fSDmitry Baryshkov		regulator-min-microvolt = <3150000>;
9274eafc5fSDmitry Baryshkov		regulator-max-microvolt = <3150000>;
9374eafc5fSDmitry Baryshkov
9474eafc5fSDmitry Baryshkov		regulator-always-on;
9574eafc5fSDmitry Baryshkov		regulator-boot-on;
9674eafc5fSDmitry Baryshkov
9774eafc5fSDmitry Baryshkov		gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
9874eafc5fSDmitry Baryshkov		enable-active-high;
9974eafc5fSDmitry Baryshkov
10074eafc5fSDmitry Baryshkov		pinctrl-names = "default";
10174eafc5fSDmitry Baryshkov		pinctrl-0 = <&boost_bypass_n_pin>;
10274eafc5fSDmitry Baryshkov	};
10374eafc5fSDmitry Baryshkov
10474eafc5fSDmitry Baryshkov	vreg_vph_pwr: vreg-vph-pwr {
10574eafc5fSDmitry Baryshkov		compatible = "regulator-fixed";
10674eafc5fSDmitry Baryshkov		regulator-name = "vph-pwr";
10774eafc5fSDmitry Baryshkov
10874eafc5fSDmitry Baryshkov		regulator-min-microvolt = <3600000>;
10974eafc5fSDmitry Baryshkov		regulator-max-microvolt = <3600000>;
11074eafc5fSDmitry Baryshkov
11174eafc5fSDmitry Baryshkov		regulator-always-on;
11274eafc5fSDmitry Baryshkov	};
11374eafc5fSDmitry Baryshkov
114724ba675SRob Herring	vreg_wlan: wlan-regulator {
115724ba675SRob Herring		compatible = "regulator-fixed";
116724ba675SRob Herring
117724ba675SRob Herring		regulator-name = "wl-reg";
118724ba675SRob Herring		regulator-min-microvolt = <3300000>;
119724ba675SRob Herring		regulator-max-microvolt = <3300000>;
120724ba675SRob Herring
121724ba675SRob Herring		gpio = <&pm8941_gpios 18 GPIO_ACTIVE_HIGH>;
122724ba675SRob Herring		enable-active-high;
123724ba675SRob Herring
124724ba675SRob Herring		pinctrl-names = "default";
125724ba675SRob Herring		pinctrl-0 = <&wlan_regulator_pin>;
126724ba675SRob Herring	};
127724ba675SRob Herring};
128724ba675SRob Herring
129724ba675SRob Herring&blsp1_uart2 {
130724ba675SRob Herring	status = "okay";
131724ba675SRob Herring};
132724ba675SRob Herring
133724ba675SRob Herring&blsp2_i2c2 {
134724ba675SRob Herring	status = "okay";
135724ba675SRob Herring	clock-frequency = <355000>;
136724ba675SRob Herring
137724ba675SRob Herring	synaptics@2c {
138724ba675SRob Herring		compatible = "syna,rmi4-i2c";
139724ba675SRob Herring		reg = <0x2c>;
140724ba675SRob Herring
141724ba675SRob Herring		interrupt-parent = <&tlmm>;
142724ba675SRob Herring		interrupts = <86 IRQ_TYPE_EDGE_FALLING>;
143724ba675SRob Herring
144724ba675SRob Herring		#address-cells = <1>;
145724ba675SRob Herring		#size-cells = <0>;
146724ba675SRob Herring
147724ba675SRob Herring		vdd-supply = <&pm8941_l22>;
148724ba675SRob Herring		vio-supply = <&pm8941_lvs3>;
149724ba675SRob Herring
150724ba675SRob Herring		pinctrl-names = "default";
151724ba675SRob Herring		pinctrl-0 = <&ts_int_pin>;
152724ba675SRob Herring
153724ba675SRob Herring		syna,startup-delay-ms = <100>;
154724ba675SRob Herring
15531fba16cSKrzysztof Kozlowski		rmi4-f01@1 {
156724ba675SRob Herring			reg = <0x1>;
1577c74379aSKrzysztof Kozlowski			syna,nosleep-mode = <1>;
158724ba675SRob Herring		};
159724ba675SRob Herring
16031fba16cSKrzysztof Kozlowski		rmi4-f11@11 {
161724ba675SRob Herring			reg = <0x11>;
162724ba675SRob Herring			syna,sensor-type = <1>;
16343db6926SKrzysztof Kozlowski			touchscreen-inverted-x;
164724ba675SRob Herring		};
165724ba675SRob Herring	};
166724ba675SRob Herring};
167724ba675SRob Herring
168724ba675SRob Herring&blsp2_i2c5 {
169724ba675SRob Herring	status = "okay";
170724ba675SRob Herring	clock-frequency = <355000>;
171724ba675SRob Herring
172724ba675SRob Herring	lp8566_wled: backlight@2c {
173724ba675SRob Herring		compatible = "ti,lp8556";
174724ba675SRob Herring		reg = <0x2c>;
175724ba675SRob Herring		power-supply = <&vreg_bl_vddio>;
176724ba675SRob Herring
177724ba675SRob Herring		bl-name = "backlight";
178724ba675SRob Herring		dev-ctrl = /bits/ 8 <0x05>;
179724ba675SRob Herring		init-brt = /bits/ 8 <0x3f>;
180724ba675SRob Herring
181724ba675SRob Herring		rom-a0h {
182724ba675SRob Herring			rom-addr = /bits/ 8 <0xa0>;
183724ba675SRob Herring			rom-val = /bits/ 8 <0xff>;
184724ba675SRob Herring		};
185724ba675SRob Herring		rom-a1h {
186724ba675SRob Herring			rom-addr = /bits/ 8 <0xa1>;
187724ba675SRob Herring			rom-val = /bits/ 8 <0x3f>;
188724ba675SRob Herring		};
189724ba675SRob Herring		rom-a2h {
190724ba675SRob Herring			rom-addr = /bits/ 8 <0xa2>;
191724ba675SRob Herring			rom-val = /bits/ 8 <0x20>;
192724ba675SRob Herring		};
193724ba675SRob Herring		rom-a3h {
194724ba675SRob Herring			rom-addr = /bits/ 8 <0xa3>;
195724ba675SRob Herring			rom-val = /bits/ 8 <0x5e>;
196724ba675SRob Herring		};
197724ba675SRob Herring		rom-a4h {
198724ba675SRob Herring			rom-addr = /bits/ 8 <0xa4>;
199724ba675SRob Herring			rom-val = /bits/ 8 <0x02>;
200724ba675SRob Herring		};
201724ba675SRob Herring		rom-a5h {
202724ba675SRob Herring			rom-addr = /bits/ 8 <0xa5>;
203724ba675SRob Herring			rom-val = /bits/ 8 <0x04>;
204724ba675SRob Herring		};
205724ba675SRob Herring		rom-a6h {
206724ba675SRob Herring			rom-addr = /bits/ 8 <0xa6>;
207724ba675SRob Herring			rom-val = /bits/ 8 <0x80>;
208724ba675SRob Herring		};
209724ba675SRob Herring		rom-a7h {
210724ba675SRob Herring			rom-addr = /bits/ 8 <0xa7>;
211724ba675SRob Herring			rom-val = /bits/ 8 <0xf7>;
212724ba675SRob Herring		};
213724ba675SRob Herring		rom-a9h {
214724ba675SRob Herring			rom-addr = /bits/ 8 <0xa9>;
215724ba675SRob Herring			rom-val = /bits/ 8 <0x80>;
216724ba675SRob Herring		};
217724ba675SRob Herring		rom-aah {
218724ba675SRob Herring			rom-addr = /bits/ 8 <0xaa>;
219724ba675SRob Herring			rom-val = /bits/ 8 <0x0f>;
220724ba675SRob Herring		};
221724ba675SRob Herring		rom-aeh {
222724ba675SRob Herring			rom-addr = /bits/ 8 <0xae>;
223724ba675SRob Herring			rom-val = /bits/ 8 <0x0f>;
224724ba675SRob Herring		};
225724ba675SRob Herring	};
226724ba675SRob Herring};
227724ba675SRob Herring
228724ba675SRob Herring&blsp2_uart1 {
229724ba675SRob Herring	status = "okay";
230724ba675SRob Herring
231724ba675SRob Herring	bluetooth {
232724ba675SRob Herring		compatible = "brcm,bcm43438-bt";
233724ba675SRob Herring		max-speed = <3000000>;
234724ba675SRob Herring
235724ba675SRob Herring		pinctrl-names = "default";
236724ba675SRob Herring		pinctrl-0 = <&bt_host_wake_pin>, <&bt_dev_wake_pin>, <&bt_reg_on_pin>;
237724ba675SRob Herring
238724ba675SRob Herring		host-wakeup-gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
239724ba675SRob Herring		device-wakeup-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
240724ba675SRob Herring		shutdown-gpios = <&pm8941_gpios 16 GPIO_ACTIVE_HIGH>;
241724ba675SRob Herring	};
242724ba675SRob Herring};
243724ba675SRob Herring
244724ba675SRob Herring&pm8941_coincell {
245724ba675SRob Herring	status = "okay";
246724ba675SRob Herring
247724ba675SRob Herring	qcom,rset-ohms = <2100>;
248724ba675SRob Herring	qcom,vset-millivolts = <3000>;
249724ba675SRob Herring};
250724ba675SRob Herring
251724ba675SRob Herring&pm8941_gpios {
252724ba675SRob Herring	gpio_keys_pin_a: gpio-keys-active-state {
253724ba675SRob Herring		pins = "gpio2", "gpio5";
254724ba675SRob Herring		function = "normal";
255724ba675SRob Herring
256724ba675SRob Herring		bias-pull-up;
257724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
258724ba675SRob Herring	};
259724ba675SRob Herring
260724ba675SRob Herring	bt_reg_on_pin: bt-reg-on-state {
261724ba675SRob Herring		pins = "gpio16";
262724ba675SRob Herring		function = "normal";
263724ba675SRob Herring
264724ba675SRob Herring		output-low;
265724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
266724ba675SRob Herring	};
267724ba675SRob Herring
268724ba675SRob Herring	wlan_sleep_clk_pin: wl-sleep-clk-state {
269724ba675SRob Herring		pins = "gpio17";
270724ba675SRob Herring		function = "func2";
271724ba675SRob Herring
272724ba675SRob Herring		output-high;
273724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
274724ba675SRob Herring	};
275724ba675SRob Herring
276724ba675SRob Herring	wlan_regulator_pin: wl-reg-active-state {
277724ba675SRob Herring		pins = "gpio18";
278724ba675SRob Herring		function = "normal";
279724ba675SRob Herring
280724ba675SRob Herring		bias-disable;
281724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
282724ba675SRob Herring	};
283724ba675SRob Herring
284724ba675SRob Herring	lcd_dcdc_en_pin_a: lcd-dcdc-en-active-state {
285724ba675SRob Herring		pins = "gpio20";
286724ba675SRob Herring		function = "normal";
287724ba675SRob Herring
288724ba675SRob Herring		bias-disable;
289724ba675SRob Herring		power-source = <PM8941_GPIO_S3>;
290724ba675SRob Herring		input-disable;
291724ba675SRob Herring		output-low;
292724ba675SRob Herring	};
293724ba675SRob Herring
294724ba675SRob Herring};
295724ba675SRob Herring
296724ba675SRob Herring&pm8941_lpg {
297724ba675SRob Herring	status = "okay";
298724ba675SRob Herring
299724ba675SRob Herring	qcom,power-source = <1>;
300724ba675SRob Herring
301724ba675SRob Herring	multi-led {
302724ba675SRob Herring		color = <LED_COLOR_ID_RGB>;
303724ba675SRob Herring		function = LED_FUNCTION_STATUS;
304724ba675SRob Herring
305724ba675SRob Herring		#address-cells = <1>;
306724ba675SRob Herring		#size-cells = <0>;
307724ba675SRob Herring
308724ba675SRob Herring		led@5 {
309724ba675SRob Herring			reg = <5>;
310724ba675SRob Herring			color = <LED_COLOR_ID_BLUE>;
311724ba675SRob Herring		};
312724ba675SRob Herring
313724ba675SRob Herring		led@6 {
314724ba675SRob Herring			reg = <6>;
315724ba675SRob Herring			color = <LED_COLOR_ID_GREEN>;
316724ba675SRob Herring		};
317724ba675SRob Herring
318724ba675SRob Herring		led@7 {
319724ba675SRob Herring			reg = <7>;
320724ba675SRob Herring			color = <LED_COLOR_ID_RED>;
321724ba675SRob Herring		};
322724ba675SRob Herring	};
323724ba675SRob Herring};
324724ba675SRob Herring
325724ba675SRob Herring&remoteproc_adsp {
326724ba675SRob Herring	cx-supply = <&pm8841_s2>;
327724ba675SRob Herring};
328724ba675SRob Herring
329724ba675SRob Herring&remoteproc_mss {
330724ba675SRob Herring	cx-supply = <&pm8841_s2>;
331724ba675SRob Herring	mss-supply = <&pm8841_s3>;
332724ba675SRob Herring	mx-supply = <&pm8841_s1>;
333724ba675SRob Herring	pll-supply = <&pm8941_l12>;
334724ba675SRob Herring};
335724ba675SRob Herring
336724ba675SRob Herring&rpm_requests {
337724ba675SRob Herring	regulators-0 {
338724ba675SRob Herring		compatible = "qcom,rpm-pm8841-regulators";
339724ba675SRob Herring
340724ba675SRob Herring		pm8841_s1: s1 {
341724ba675SRob Herring			regulator-min-microvolt = <675000>;
342724ba675SRob Herring			regulator-max-microvolt = <1050000>;
343724ba675SRob Herring		};
344724ba675SRob Herring
345724ba675SRob Herring		pm8841_s2: s2 {
346724ba675SRob Herring			regulator-min-microvolt = <500000>;
347724ba675SRob Herring			regulator-max-microvolt = <1050000>;
348724ba675SRob Herring		};
349724ba675SRob Herring
350724ba675SRob Herring		pm8841_s3: s3 {
351724ba675SRob Herring			regulator-min-microvolt = <500000>;
352724ba675SRob Herring			regulator-max-microvolt = <1050000>;
353724ba675SRob Herring		};
354724ba675SRob Herring
355724ba675SRob Herring		pm8841_s4: s4 {
356724ba675SRob Herring			regulator-min-microvolt = <500000>;
357724ba675SRob Herring			regulator-max-microvolt = <1050000>;
358724ba675SRob Herring		};
359724ba675SRob Herring	};
360724ba675SRob Herring
361724ba675SRob Herring	regulators-1 {
362724ba675SRob Herring		compatible = "qcom,rpm-pm8941-regulators";
363724ba675SRob Herring
364724ba675SRob Herring		vdd_l1_l3-supply = <&pm8941_s1>;
365724ba675SRob Herring		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
366724ba675SRob Herring		vdd_l4_l11-supply = <&pm8941_s1>;
367724ba675SRob Herring		vdd_l5_l7-supply = <&pm8941_s2>;
368724ba675SRob Herring		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
369724ba675SRob Herring		vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
370724ba675SRob Herring		vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
371724ba675SRob Herring		vdd_l21-supply = <&vreg_boost>;
372724ba675SRob Herring
373724ba675SRob Herring		pm8941_s1: s1 {
374724ba675SRob Herring			regulator-min-microvolt = <1300000>;
375724ba675SRob Herring			regulator-max-microvolt = <1300000>;
376724ba675SRob Herring			regulator-always-on;
377724ba675SRob Herring			regulator-boot-on;
378724ba675SRob Herring		};
379724ba675SRob Herring
380724ba675SRob Herring		pm8941_s2: s2 {
381724ba675SRob Herring			regulator-min-microvolt = <2150000>;
382724ba675SRob Herring			regulator-max-microvolt = <2150000>;
383724ba675SRob Herring			regulator-boot-on;
384724ba675SRob Herring		};
385724ba675SRob Herring
386724ba675SRob Herring		pm8941_s3: s3 {
387724ba675SRob Herring			regulator-min-microvolt = <1800000>;
388724ba675SRob Herring			regulator-max-microvolt = <1800000>;
389724ba675SRob Herring			regulator-system-load = <154000>;
390724ba675SRob Herring			regulator-always-on;
391724ba675SRob Herring			regulator-boot-on;
392724ba675SRob Herring		};
393724ba675SRob Herring
394724ba675SRob Herring		pm8941_s4: s4 {
395724ba675SRob Herring			regulator-min-microvolt = <5000000>;
396724ba675SRob Herring			regulator-max-microvolt = <5000000>;
397724ba675SRob Herring		};
398724ba675SRob Herring
399724ba675SRob Herring		pm8941_l1: l1 {
400724ba675SRob Herring			regulator-min-microvolt = <1225000>;
401724ba675SRob Herring			regulator-max-microvolt = <1225000>;
402724ba675SRob Herring			regulator-always-on;
403724ba675SRob Herring			regulator-boot-on;
404724ba675SRob Herring		};
405724ba675SRob Herring
406724ba675SRob Herring		pm8941_l2: l2 {
407724ba675SRob Herring			regulator-min-microvolt = <1200000>;
408724ba675SRob Herring			regulator-max-microvolt = <1200000>;
409724ba675SRob Herring		};
410724ba675SRob Herring
411724ba675SRob Herring		pm8941_l3: l3 {
412724ba675SRob Herring			regulator-min-microvolt = <1200000>;
413724ba675SRob Herring			regulator-max-microvolt = <1200000>;
414724ba675SRob Herring		};
415724ba675SRob Herring
416724ba675SRob Herring		pm8941_l4: l4 {
417724ba675SRob Herring			regulator-min-microvolt = <1225000>;
418724ba675SRob Herring			regulator-max-microvolt = <1225000>;
419724ba675SRob Herring		};
420724ba675SRob Herring
421724ba675SRob Herring		pm8941_l5: l5 {
422724ba675SRob Herring			regulator-min-microvolt = <1800000>;
423724ba675SRob Herring			regulator-max-microvolt = <1800000>;
424724ba675SRob Herring		};
425724ba675SRob Herring
426724ba675SRob Herring		pm8941_l6: l6 {
427724ba675SRob Herring			regulator-min-microvolt = <1800000>;
428724ba675SRob Herring			regulator-max-microvolt = <1800000>;
429724ba675SRob Herring			regulator-boot-on;
430724ba675SRob Herring		};
431724ba675SRob Herring
432724ba675SRob Herring		pm8941_l7: l7 {
433724ba675SRob Herring			regulator-min-microvolt = <1800000>;
434724ba675SRob Herring			regulator-max-microvolt = <1800000>;
435724ba675SRob Herring			regulator-boot-on;
436724ba675SRob Herring		};
437724ba675SRob Herring
438724ba675SRob Herring		pm8941_l8: l8 {
439724ba675SRob Herring			regulator-min-microvolt = <1800000>;
440724ba675SRob Herring			regulator-max-microvolt = <1800000>;
441724ba675SRob Herring		};
442724ba675SRob Herring
443724ba675SRob Herring		pm8941_l9: l9 {
444724ba675SRob Herring			regulator-min-microvolt = <1800000>;
445724ba675SRob Herring			regulator-max-microvolt = <2950000>;
446724ba675SRob Herring		};
447724ba675SRob Herring
448724ba675SRob Herring		pm8941_l11: l11 {
449724ba675SRob Herring			regulator-min-microvolt = <1300000>;
450724ba675SRob Herring			regulator-max-microvolt = <1350000>;
451724ba675SRob Herring		};
452724ba675SRob Herring
453724ba675SRob Herring		pm8941_l12: l12 {
454724ba675SRob Herring			regulator-min-microvolt = <1800000>;
455724ba675SRob Herring			regulator-max-microvolt = <1800000>;
456724ba675SRob Herring			regulator-always-on;
457724ba675SRob Herring			regulator-boot-on;
458724ba675SRob Herring		};
459724ba675SRob Herring
460724ba675SRob Herring		pm8941_l13: l13 {
461724ba675SRob Herring			regulator-min-microvolt = <1800000>;
462724ba675SRob Herring			regulator-max-microvolt = <2950000>;
463724ba675SRob Herring			regulator-boot-on;
464724ba675SRob Herring		};
465724ba675SRob Herring
466724ba675SRob Herring		pm8941_l14: l14 {
467724ba675SRob Herring			regulator-min-microvolt = <1800000>;
468724ba675SRob Herring			regulator-max-microvolt = <1800000>;
469724ba675SRob Herring		};
470724ba675SRob Herring
471724ba675SRob Herring		pm8941_l15: l15 {
472724ba675SRob Herring			regulator-min-microvolt = <2050000>;
473724ba675SRob Herring			regulator-max-microvolt = <2050000>;
474724ba675SRob Herring		};
475724ba675SRob Herring
476724ba675SRob Herring		pm8941_l16: l16 {
477724ba675SRob Herring			regulator-min-microvolt = <2700000>;
478724ba675SRob Herring			regulator-max-microvolt = <2700000>;
479724ba675SRob Herring		};
480724ba675SRob Herring
481724ba675SRob Herring		pm8941_l17: l17 {
482724ba675SRob Herring			regulator-min-microvolt = <2700000>;
483724ba675SRob Herring			regulator-max-microvolt = <2700000>;
484724ba675SRob Herring		};
485724ba675SRob Herring
486724ba675SRob Herring		pm8941_l18: l18 {
487724ba675SRob Herring			regulator-min-microvolt = <2850000>;
488724ba675SRob Herring			regulator-max-microvolt = <2850000>;
489724ba675SRob Herring		};
490724ba675SRob Herring
491724ba675SRob Herring		pm8941_l19: l19 {
492724ba675SRob Herring			regulator-min-microvolt = <2850000>;
493724ba675SRob Herring			regulator-max-microvolt = <2850000>;
494724ba675SRob Herring		};
495724ba675SRob Herring
496724ba675SRob Herring		pm8941_l20: l20 {
497724ba675SRob Herring			regulator-min-microvolt = <2950000>;
498724ba675SRob Herring			regulator-max-microvolt = <2950000>;
499724ba675SRob Herring			regulator-system-load = <500000>;
500724ba675SRob Herring			regulator-allow-set-load;
501724ba675SRob Herring			regulator-boot-on;
502724ba675SRob Herring		};
503724ba675SRob Herring
504724ba675SRob Herring		pm8941_l21: l21 {
505724ba675SRob Herring			regulator-min-microvolt = <2950000>;
506724ba675SRob Herring			regulator-max-microvolt = <2950000>;
507724ba675SRob Herring			regulator-boot-on;
508724ba675SRob Herring		};
509724ba675SRob Herring
510724ba675SRob Herring		pm8941_l22: l22 {
511724ba675SRob Herring			regulator-min-microvolt = <3000000>;
512724ba675SRob Herring			regulator-max-microvolt = <3000000>;
513724ba675SRob Herring		};
514724ba675SRob Herring
515724ba675SRob Herring		pm8941_l23: l23 {
516724ba675SRob Herring			regulator-min-microvolt = <2800000>;
517724ba675SRob Herring			regulator-max-microvolt = <2800000>;
518724ba675SRob Herring		};
519724ba675SRob Herring
520724ba675SRob Herring		pm8941_l24: l24 {
521724ba675SRob Herring			regulator-min-microvolt = <3075000>;
522724ba675SRob Herring			regulator-max-microvolt = <3075000>;
523724ba675SRob Herring			regulator-boot-on;
524724ba675SRob Herring		};
525724ba675SRob Herring
526724ba675SRob Herring		pm8941_lvs3: lvs3 {};
527724ba675SRob Herring	};
528724ba675SRob Herring};
529724ba675SRob Herring
530724ba675SRob Herring&sdhc_1 {
531724ba675SRob Herring	status = "okay";
532724ba675SRob Herring
533724ba675SRob Herring	vmmc-supply = <&pm8941_l20>;
534724ba675SRob Herring	vqmmc-supply = <&pm8941_s3>;
535724ba675SRob Herring
536724ba675SRob Herring	pinctrl-names = "default", "sleep";
537724ba675SRob Herring	pinctrl-0 = <&sdc1_on>;
538724ba675SRob Herring	pinctrl-1 = <&sdc1_off>;
539724ba675SRob Herring};
540724ba675SRob Herring
541724ba675SRob Herring&sdhc_2 {
542724ba675SRob Herring	status = "okay";
543724ba675SRob Herring
544724ba675SRob Herring	vmmc-supply = <&pm8941_l21>;
545724ba675SRob Herring	vqmmc-supply = <&pm8941_l13>;
546724ba675SRob Herring
547724ba675SRob Herring	cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
548724ba675SRob Herring
549724ba675SRob Herring	pinctrl-names = "default", "sleep";
550724ba675SRob Herring	pinctrl-0 = <&sdc2_on>;
551724ba675SRob Herring	pinctrl-1 = <&sdc2_off>;
552724ba675SRob Herring};
553724ba675SRob Herring
554724ba675SRob Herring&sdhc_3 {
555724ba675SRob Herring	status = "okay";
556724ba675SRob Herring
557724ba675SRob Herring	max-frequency = <100000000>;
558724ba675SRob Herring	vmmc-supply = <&vreg_wlan>;
559724ba675SRob Herring	non-removable;
560724ba675SRob Herring
561724ba675SRob Herring	pinctrl-names = "default";
562724ba675SRob Herring	pinctrl-0 = <&sdc3_on>;
563724ba675SRob Herring
564724ba675SRob Herring	#address-cells = <1>;
565724ba675SRob Herring	#size-cells = <0>;
566724ba675SRob Herring
567724ba675SRob Herring	bcrmf@1 {
568724ba675SRob Herring		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
569724ba675SRob Herring		reg = <1>;
570724ba675SRob Herring
571724ba675SRob Herring		brcm,drive-strength = <10>;
572724ba675SRob Herring
573724ba675SRob Herring		pinctrl-names = "default";
574724ba675SRob Herring		pinctrl-0 = <&wlan_sleep_clk_pin>;
575724ba675SRob Herring	};
576724ba675SRob Herring};
577724ba675SRob Herring
578724ba675SRob Herring&smbb {
579724ba675SRob Herring	qcom,fast-charge-safe-current = <1500000>;
580724ba675SRob Herring	qcom,fast-charge-current-limit = <1500000>;
581724ba675SRob Herring	qcom,dc-current-limit = <1800000>;
582724ba675SRob Herring	usb-charge-current-limit = <1800000>;
583724ba675SRob Herring	qcom,fast-charge-safe-voltage = <4400000>;
584724ba675SRob Herring	qcom,fast-charge-high-threshold-voltage = <4350000>;
585724ba675SRob Herring	qcom,fast-charge-low-threshold-voltage = <3400000>;
586724ba675SRob Herring	qcom,auto-recharge-threshold-voltage = <4200000>;
587724ba675SRob Herring	qcom,minimum-input-voltage = <4300000>;
588*c9c8179dSBryant Mairs
589*c9c8179dSBryant Mairs	status = "okay";
590724ba675SRob Herring};
591724ba675SRob Herring
592724ba675SRob Herring&tlmm {
593724ba675SRob Herring	lcd_backlight_en_pin_a: lcd-backlight-vddio-state {
594724ba675SRob Herring		pins = "gpio69";
595724ba675SRob Herring		function = "gpio";
596724ba675SRob Herring		drive-strength = <10>;
597724ba675SRob Herring		output-low;
598724ba675SRob Herring		bias-disable;
599724ba675SRob Herring	};
600724ba675SRob Herring
601724ba675SRob Herring	sdc1_on: sdc1-on-state {
602724ba675SRob Herring		clk-pins {
603724ba675SRob Herring			pins = "sdc1_clk";
604724ba675SRob Herring			drive-strength = <16>;
605724ba675SRob Herring			bias-disable;
606724ba675SRob Herring		};
607724ba675SRob Herring
608724ba675SRob Herring		cmd-data-pins {
609724ba675SRob Herring			pins = "sdc1_cmd", "sdc1_data";
610724ba675SRob Herring			drive-strength = <10>;
611724ba675SRob Herring			bias-pull-up;
612724ba675SRob Herring		};
613724ba675SRob Herring	};
614724ba675SRob Herring
615724ba675SRob Herring	sdc2_on: sdc2-on-state {
616724ba675SRob Herring		clk-pins {
617724ba675SRob Herring			pins = "sdc2_clk";
618724ba675SRob Herring			drive-strength = <6>;
619724ba675SRob Herring			bias-disable;
620724ba675SRob Herring		};
621724ba675SRob Herring
622724ba675SRob Herring		cmd-data-pins {
623724ba675SRob Herring			pins = "sdc2_cmd", "sdc2_data";
624724ba675SRob Herring			drive-strength = <6>;
625724ba675SRob Herring			bias-pull-up;
626724ba675SRob Herring		};
627724ba675SRob Herring
628724ba675SRob Herring		cd-pins {
629724ba675SRob Herring			pins = "gpio62";
630724ba675SRob Herring			function = "gpio";
631724ba675SRob Herring			drive-strength = <2>;
632724ba675SRob Herring			bias-disable;
633724ba675SRob Herring		};
634724ba675SRob Herring	};
635724ba675SRob Herring
636724ba675SRob Herring	sdc3_on: sdc3-on-state {
637724ba675SRob Herring		clk-pins {
638724ba675SRob Herring			pins = "gpio40";
639724ba675SRob Herring			function = "sdc3";
640724ba675SRob Herring			drive-strength = <10>;
641724ba675SRob Herring			bias-disable;
642724ba675SRob Herring		};
643724ba675SRob Herring
644724ba675SRob Herring		cmd-pins {
645724ba675SRob Herring			pins = "gpio39";
646724ba675SRob Herring			function = "sdc3";
647724ba675SRob Herring			drive-strength = <10>;
648724ba675SRob Herring			bias-pull-up;
649724ba675SRob Herring		};
650724ba675SRob Herring
651724ba675SRob Herring		data-pins {
652724ba675SRob Herring			pins = "gpio35", "gpio36", "gpio37", "gpio38";
653724ba675SRob Herring			function = "sdc3";
654724ba675SRob Herring			drive-strength = <10>;
655724ba675SRob Herring			bias-pull-up;
656724ba675SRob Herring		};
657724ba675SRob Herring	};
658724ba675SRob Herring
659724ba675SRob Herring	ts_int_pin: ts-int-pin-state {
660724ba675SRob Herring		pins = "gpio86";
661724ba675SRob Herring		function = "gpio";
662724ba675SRob Herring		drive-strength = <2>;
663724ba675SRob Herring		bias-disable;
664724ba675SRob Herring	};
665724ba675SRob Herring
666724ba675SRob Herring	bt_host_wake_pin: bt-host-wake-state {
667724ba675SRob Herring		pins = "gpio95";
668724ba675SRob Herring		function = "gpio";
669724ba675SRob Herring		drive-strength = <2>;
670724ba675SRob Herring		bias-disable;
671724ba675SRob Herring		output-low;
672724ba675SRob Herring	};
673724ba675SRob Herring
674724ba675SRob Herring	bt_dev_wake_pin: bt-dev-wake-state {
675724ba675SRob Herring		pins = "gpio96";
676724ba675SRob Herring		function = "gpio";
677724ba675SRob Herring		drive-strength = <2>;
678724ba675SRob Herring		bias-disable;
679724ba675SRob Herring	};
680724ba675SRob Herring};
681724ba675SRob Herring
682724ba675SRob Herring&usb {
683724ba675SRob Herring	status = "okay";
684724ba675SRob Herring
685724ba675SRob Herring	phys = <&usb_hs1_phy>;
686724ba675SRob Herring	phy-select = <&tcsr 0xb000 0>;
687724ba675SRob Herring	extcon = <&smbb>, <&usb_id>;
688724ba675SRob Herring	vbus-supply = <&chg_otg>;
689724ba675SRob Herring
690724ba675SRob Herring	hnp-disable;
691724ba675SRob Herring	srp-disable;
692724ba675SRob Herring	adp-disable;
693724ba675SRob Herring};
694724ba675SRob Herring
695724ba675SRob Herring&usb_hs1_phy {
696724ba675SRob Herring	status = "okay";
697724ba675SRob Herring
698724ba675SRob Herring	v1p8-supply = <&pm8941_l6>;
699724ba675SRob Herring	v3p3-supply = <&pm8941_l24>;
700724ba675SRob Herring
701724ba675SRob Herring	extcon = <&smbb>;
702724ba675SRob Herring	qcom,init-seq = /bits/ 8 <0x1 0x64>;
703724ba675SRob Herring};
704