1// SPDX-License-Identifier: GPL-2.0-only
2
3/dts-v1/;
4
5#include "msm8916-pm8916.dtsi"
6#include <dt-bindings/gpio/gpio.h>
7#include <dt-bindings/input/input.h>
8
9/ {
10	model = "Longcheer L8150";
11	compatible = "longcheer,l8150", "qcom,msm8916-v1-qrd/9-v1", "qcom,msm8916";
12
13	aliases {
14		serial0 = &blsp1_uart2;
15	};
16
17	chosen {
18		stdout-path = "serial0";
19	};
20
21	reserved-memory {
22		// wcnss.mdt is not relocatable, so it must be loaded at 0x8b600000
23		/delete-node/ wcnss@89300000;
24
25		wcnss_mem: wcnss@8b600000 {
26			reg = <0x0 0x8b600000 0x0 0x600000>;
27			no-map;
28		};
29	};
30
31	// FIXME: Use extcon device provided by charger driver when available
32	usb_vbus: usb-vbus {
33		compatible = "linux,extcon-usb-gpio";
34		vbus-gpio = <&msmgpio 62 GPIO_ACTIVE_HIGH>;
35		pinctrl-names = "default";
36		pinctrl-0 = <&usb_vbus_default>;
37	};
38
39	gpio-keys {
40		compatible = "gpio-keys";
41
42		pinctrl-names = "default";
43		pinctrl-0 = <&gpio_keys_default>;
44
45		label = "GPIO Buttons";
46
47		volume-up {
48			label = "Volume Up";
49			gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
50			linux,code = <KEY_VOLUMEUP>;
51		};
52	};
53};
54
55&blsp1_uart2 {
56	status = "okay";
57};
58
59&pm8916_resin {
60	status = "okay";
61	linux,code = <KEY_VOLUMEDOWN>;
62};
63
64&pronto {
65	status = "okay";
66};
67
68&sdhc_1 {
69	status = "okay";
70
71	pinctrl-names = "default", "sleep";
72	pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
73	pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
74};
75
76&sdhc_2 {
77	status = "okay";
78
79	pinctrl-names = "default", "sleep";
80	pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on>;
81	pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
82
83	non-removable;
84};
85
86&usb {
87	status = "okay";
88	dr_mode = "peripheral";
89	extcon = <&usb_vbus>;
90};
91
92&usb_hs_phy {
93	extcon = <&usb_vbus>;
94};
95
96&smd_rpm_regulators {
97	vdd_l1_l2_l3-supply = <&pm8916_s3>;
98	vdd_l4_l5_l6-supply = <&pm8916_s4>;
99	vdd_l7-supply = <&pm8916_s4>;
100
101	s1 {
102		regulator-min-microvolt = <500000>;
103		regulator-max-microvolt = <1300000>;
104	};
105
106	s3 {
107		regulator-min-microvolt = <1200000>;
108		regulator-max-microvolt = <1300000>;
109	};
110
111	s4 {
112		regulator-min-microvolt = <1800000>;
113		regulator-max-microvolt = <2100000>;
114	};
115
116	l1 {
117		regulator-min-microvolt = <1225000>;
118		regulator-max-microvolt = <1225000>;
119	};
120
121	l2 {
122		regulator-min-microvolt = <1200000>;
123		regulator-max-microvolt = <1200000>;
124	};
125
126	l3 {
127		regulator-min-microvolt = <500000>;
128		regulator-max-microvolt = <1287500>;
129	};
130
131	l4 {
132		regulator-min-microvolt = <2050000>;
133		regulator-max-microvolt = <2050000>;
134	};
135
136	l5 {
137		regulator-min-microvolt = <1800000>;
138		regulator-max-microvolt = <1800000>;
139	};
140
141	l6 {
142		regulator-min-microvolt = <1800000>;
143		regulator-max-microvolt = <1800000>;
144	};
145
146	l7 {
147		regulator-min-microvolt = <1800000>;
148		regulator-max-microvolt = <1800000>;
149	};
150
151	l8 {
152		regulator-min-microvolt = <2850000>;
153		regulator-max-microvolt = <2900000>;
154	};
155
156	l9 {
157		regulator-min-microvolt = <3300000>;
158		regulator-max-microvolt = <3300000>;
159	};
160
161	l10 {
162		regulator-min-microvolt = <2700000>;
163		regulator-max-microvolt = <2800000>;
164	};
165
166	l11 {
167		regulator-min-microvolt = <1800000>;
168		regulator-max-microvolt = <2950000>;
169		regulator-allow-set-load;
170		regulator-system-load = <200000>;
171	};
172
173	l12 {
174		regulator-min-microvolt = <1800000>;
175		regulator-max-microvolt = <2950000>;
176	};
177
178	l13 {
179		regulator-min-microvolt = <3075000>;
180		regulator-max-microvolt = <3075000>;
181	};
182
183	l14 {
184		regulator-min-microvolt = <1800000>;
185		regulator-max-microvolt = <3300000>;
186	};
187
188	l15 {
189		regulator-min-microvolt = <1800000>;
190		regulator-max-microvolt = <3300000>;
191	};
192
193	l16 {
194		regulator-min-microvolt = <1800000>;
195		regulator-max-microvolt = <3300000>;
196	};
197
198	l17 {
199		regulator-min-microvolt = <2850000>;
200		regulator-max-microvolt = <2850000>;
201	};
202
203	l18 {
204		regulator-min-microvolt = <2700000>;
205		regulator-max-microvolt = <2700000>;
206	};
207};
208
209&msmgpio {
210	gpio_keys_default: gpio-keys-default {
211		pins = "gpio107";
212		function = "gpio";
213
214		drive-strength = <2>;
215		bias-pull-up;
216	};
217
218	usb_vbus_default: usb-vbus-default {
219		pins = "gpio62";
220		function = "gpio";
221
222		bias-pull-up;
223	};
224};
225