Loading...
Note: File does not exist in v6.2.
1// SPDX-License-Identifier: GPL-2.0
2#include <dt-bindings/gpio/gpio.h>
3#include <dt-bindings/input/input.h>
4#include <dt-bindings/leds/common.h>
5#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
6#include "qcom-msm8974.dtsi"
7#include "pm8841.dtsi"
8#include "pm8941.dtsi"
9
10/delete-node/ &mpss_region;
11
12/ {
13 model = "Qualcomm APQ8074 Dragonboard";
14 compatible = "qcom,apq8074-dragonboard", "qcom,apq8074";
15
16 aliases {
17 serial0 = &blsp1_uart2;
18 usid0 = &pm8941_0;
19 usid4 = &pm8841_0;
20 };
21
22 chosen {
23 stdout-path = "serial0:115200n8";
24 };
25
26 gpio-keys {
27 compatible = "gpio-keys";
28 autorepeat;
29
30 pinctrl-0 = <&msm_keys_default>;
31 pinctrl-names = "default";
32
33 button-volup {
34 label = "Volume Up";
35 linux,code = <KEY_VOLUMEUP>;
36 gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
37 };
38
39 button-general {
40 label = "General";
41 linux,code = <KEY_PROG1>;
42 gpios = <&pm8941_gpios 23 GPIO_ACTIVE_LOW>;
43 };
44 };
45
46 reserved-memory {
47 mpss_region: mpss@ac00000 {
48 reg = <0x0ac00000 0x2500000>;
49 no-map;
50 };
51 };
52
53 vreg_boost: vreg-boost {
54 compatible = "regulator-fixed";
55
56 regulator-name = "vreg-boost";
57 regulator-min-microvolt = <3150000>;
58 regulator-max-microvolt = <3150000>;
59
60 regulator-always-on;
61 regulator-boot-on;
62
63 gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
64 enable-active-high;
65
66 pinctrl-names = "default";
67 pinctrl-0 = <&boost_bypass_n_pin>;
68 };
69
70 vreg_vph_pwr: vreg-vph-pwr {
71 compatible = "regulator-fixed";
72 regulator-name = "vph-pwr";
73
74 regulator-min-microvolt = <3600000>;
75 regulator-max-microvolt = <3600000>;
76
77 regulator-always-on;
78 };
79};
80
81&blsp1_uart2 {
82 status = "okay";
83};
84
85&blsp2_dma {
86 qcom,controlled-remotely;
87};
88
89&blsp2_i2c5 {
90 status = "okay";
91 clock-frequency = <200000>;
92
93 eeprom: eeprom@52 {
94 compatible = "atmel,24c128";
95 reg = <0x52>;
96 pagesize = <32>;
97 read-only;
98 };
99};
100
101&gpu {
102 status = "okay";
103};
104
105&mdss {
106 status = "okay";
107};
108
109&mdss_dsi0 {
110 vdda-supply = <&pm8941_l2>;
111 vdd-supply = <&pm8941_l22>;
112 vddio-supply = <&pm8941_l12>;
113
114 status = "okay";
115
116 panel: panel@0 {
117 compatible = "sharp,ls043t1le01-qhd";
118 reg = <0>;
119
120 avdd-supply = <&pm8941_l22>;
121 backlight = <&pm8941_wled>;
122 reset-gpios = <&pm8941_gpios 19 GPIO_ACTIVE_HIGH>;
123
124 port {
125 panel_in: endpoint {
126 remote-endpoint = <&mdss_dsi0_out>;
127 };
128 };
129 };
130};
131
132&mdss_dsi0_out {
133 remote-endpoint = <&panel_in>;
134 data-lanes = <0 1 2 3>;
135};
136
137&mdss_dsi0_phy {
138 status = "okay";
139
140 vddio-supply = <&pm8941_l12>;
141};
142
143&gpu {
144 status = "okay";
145};
146
147&mdss {
148 status = "okay";
149};
150
151&pm8941_gpios {
152 msm_keys_default: pm8941-gpio-keys-state {
153 pins = "gpio5", "gpio23";
154 function = "normal";
155 input-enable;
156 drive-push-pull;
157 bias-pull-up;
158 qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
159 power-source = <PM8941_GPIO_S3>; /* 1.8V */
160 };
161};
162
163&pm8941_lpg {
164 qcom,power-source = <1>;
165 status = "okay";
166
167 led@5 {
168 reg = <5>;
169 color = <LED_COLOR_ID_BLUE>;
170 function = LED_FUNCTION_INDICATOR;
171 };
172
173 led@6 {
174 reg = <6>;
175 color = <LED_COLOR_ID_GREEN>;
176 function = LED_FUNCTION_INDICATOR;
177 };
178
179 led@7 {
180 reg = <7>;
181 color = <LED_COLOR_ID_RED>;
182 function = LED_FUNCTION_INDICATOR;
183 };
184};
185
186&pm8941_resin {
187 linux,code = <KEY_VOLUMEDOWN>;
188 status = "okay";
189};
190
191&pm8941_wled {
192 qcom,cs-out;
193 qcom,switching-freq = <3200>;
194 qcom,ovp = <32>;
195 qcom,num-strings = <1>;
196
197 status = "okay";
198};
199
200&remoteproc_adsp {
201 cx-supply = <&pm8841_s2>;
202
203 firmware-name = "qcom/apq8074/adsp.mbn";
204
205 status = "okay";
206};
207
208&remoteproc_mss {
209 cx-supply = <&pm8841_s2>;
210 mss-supply = <&pm8841_s3>;
211 mx-supply = <&pm8841_s1>;
212 pll-supply = <&pm8941_l12>;
213
214 firmware-name = "qcom/apq8074/mba.mbn", "qcom/apq8074/modem.mbn";
215
216 status = "okay";
217};
218
219&rpm_requests {
220 regulators-0 {
221 compatible = "qcom,rpm-pm8841-regulators";
222
223 pm8841_s1: s1 {
224 regulator-min-microvolt = <675000>;
225 regulator-max-microvolt = <1050000>;
226 };
227
228 pm8841_s2: s2 {
229 regulator-min-microvolt = <500000>;
230 regulator-max-microvolt = <1050000>;
231 };
232
233 pm8841_s3: s3 {
234 regulator-min-microvolt = <500000>;
235 regulator-max-microvolt = <1050000>;
236 };
237
238 pm8841_s4: s4 {
239 regulator-min-microvolt = <500000>;
240 regulator-max-microvolt = <1050000>;
241 };
242 };
243
244 regulators-1 {
245 compatible = "qcom,rpm-pm8941-regulators";
246
247 vdd_l1_l3-supply = <&pm8941_s1>;
248 vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
249 vdd_l4_l11-supply = <&pm8941_s1>;
250 vdd_l5_l7-supply = <&pm8941_s2>;
251 vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
252 vin_5vs-supply = <&pm8941_5v>;
253
254 pm8941_s1: s1 {
255 regulator-min-microvolt = <1300000>;
256 regulator-max-microvolt = <1300000>;
257 regulator-always-on;
258 regulator-boot-on;
259 };
260
261 pm8941_s2: s2 {
262 regulator-min-microvolt = <2150000>;
263 regulator-max-microvolt = <2150000>;
264 regulator-boot-on;
265 };
266
267 pm8941_s3: s3 {
268 regulator-min-microvolt = <1800000>;
269 regulator-max-microvolt = <1800000>;
270 regulator-always-on;
271 regulator-boot-on;
272 };
273
274 pm8941_l1: l1 {
275 regulator-min-microvolt = <1225000>;
276 regulator-max-microvolt = <1225000>;
277 regulator-always-on;
278 regulator-boot-on;
279 };
280
281 pm8941_l2: l2 {
282 regulator-min-microvolt = <1200000>;
283 regulator-max-microvolt = <1200000>;
284 };
285
286 pm8941_l3: l3 {
287 regulator-min-microvolt = <1225000>;
288 regulator-max-microvolt = <1225000>;
289 };
290
291 pm8941_l4: l4 {
292 regulator-min-microvolt = <1225000>;
293 regulator-max-microvolt = <1225000>;
294 };
295
296 pm8941_l5: l5 {
297 regulator-min-microvolt = <1800000>;
298 regulator-max-microvolt = <1800000>;
299 };
300
301 pm8941_l6: l6 {
302 regulator-min-microvolt = <1800000>;
303 regulator-max-microvolt = <1800000>;
304 regulator-boot-on;
305 };
306
307 pm8941_l7: l7 {
308 regulator-min-microvolt = <1800000>;
309 regulator-max-microvolt = <1800000>;
310 regulator-boot-on;
311 };
312
313 pm8941_l8: l8 {
314 regulator-min-microvolt = <1800000>;
315 regulator-max-microvolt = <1800000>;
316 };
317
318 pm8941_l9: l9 {
319 regulator-min-microvolt = <1800000>;
320 regulator-max-microvolt = <2950000>;
321 };
322
323 pm8941_l10: l10 {
324 regulator-min-microvolt = <1800000>;
325 regulator-max-microvolt = <1800000>;
326 regulator-always-on;
327 };
328
329 pm8941_l11: l11 {
330 regulator-min-microvolt = <1300000>;
331 regulator-max-microvolt = <1300000>;
332 };
333
334 pm8941_l12: l12 {
335 regulator-min-microvolt = <1800000>;
336 regulator-max-microvolt = <1800000>;
337 regulator-always-on;
338 regulator-boot-on;
339 };
340
341 pm8941_l13: l13 {
342 regulator-min-microvolt = <1800000>;
343 regulator-max-microvolt = <2950000>;
344 regulator-boot-on;
345 };
346
347 pm8941_l14: l14 {
348 regulator-min-microvolt = <1800000>;
349 regulator-max-microvolt = <1800000>;
350 };
351
352 pm8941_l15: l15 {
353 regulator-min-microvolt = <2050000>;
354 regulator-max-microvolt = <2050000>;
355 };
356
357 pm8941_l16: l16 {
358 regulator-min-microvolt = <2700000>;
359 regulator-max-microvolt = <2700000>;
360 };
361
362 pm8941_l17: l17 {
363 regulator-min-microvolt = <2700000>;
364 regulator-max-microvolt = <2700000>;
365 };
366
367 pm8941_l18: l18 {
368 regulator-min-microvolt = <2850000>;
369 regulator-max-microvolt = <2850000>;
370 };
371
372 pm8941_l19: l19 {
373 regulator-min-microvolt = <3300000>;
374 regulator-max-microvolt = <3300000>;
375 regulator-always-on;
376 };
377
378 pm8941_l20: l20 {
379 regulator-min-microvolt = <2950000>;
380 regulator-max-microvolt = <2950000>;
381 regulator-system-load = <200000>;
382 regulator-allow-set-load;
383 regulator-boot-on;
384 };
385
386 pm8941_l21: l21 {
387 regulator-min-microvolt = <2950000>;
388 regulator-max-microvolt = <2950000>;
389 regulator-boot-on;
390 };
391
392 pm8941_l22: l22 {
393 regulator-min-microvolt = <3000000>;
394 regulator-max-microvolt = <3000000>;
395 };
396
397 pm8941_l23: l23 {
398 regulator-min-microvolt = <3000000>;
399 regulator-max-microvolt = <3000000>;
400 };
401
402 pm8941_l24: l24 {
403 regulator-min-microvolt = <3075000>;
404 regulator-max-microvolt = <3075000>;
405 regulator-boot-on;
406 };
407 };
408};
409
410&sdhc_1 {
411 status = "okay";
412
413 vmmc-supply = <&pm8941_l20>;
414 vqmmc-supply = <&pm8941_s3>;
415
416 pinctrl-names = "default", "sleep";
417 pinctrl-0 = <&sdc1_on>;
418 pinctrl-1 = <&sdc1_off>;
419};
420
421&sdhc_2 {
422 status = "okay";
423
424 cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
425 vmmc-supply = <&pm8941_l21>;
426 vqmmc-supply = <&pm8941_l13>;
427
428 pinctrl-names = "default", "sleep";
429 pinctrl-0 = <&sdc2_on>;
430 pinctrl-1 = <&sdc2_off>;
431};
432
433&smbb {
434 status = "okay";
435};
436
437&tlmm {
438 sdc1_on: sdc1-on-state {
439 clk-pins {
440 pins = "sdc1_clk";
441 drive-strength = <16>;
442 bias-disable;
443 };
444
445 cmd-data-pins {
446 pins = "sdc1_cmd", "sdc1_data";
447 drive-strength = <10>;
448 bias-pull-up;
449 };
450 };
451
452 sdc2_on: sdc2-on-state {
453 clk-pins {
454 pins = "sdc2_clk";
455 drive-strength = <10>;
456 bias-disable;
457 };
458
459 cmd-data-pins {
460 pins = "sdc2_cmd", "sdc2_data";
461 drive-strength = <6>;
462 bias-pull-up;
463 };
464
465 cd-pins {
466 pins = "gpio62";
467 function = "gpio";
468 drive-strength = <2>;
469 bias-disable;
470 };
471 };
472};
473
474&usb {
475 status = "okay";
476
477 phys = <&usb_hs2_phy>;
478 phy-select = <&tcsr 0xb000 1>;
479 extcon = <&smbb>, <&usb_id>;
480 vbus-supply = <&chg_otg>;
481 hnp-disable;
482 srp-disable;
483 adp-disable;
484};
485
486&usb_hs2_phy {
487 status = "okay";
488 v3p3-supply = <&pm8941_l24>;
489 v1p8-supply = <&pm8941_l6>;
490 extcon = <&smbb>;
491 qcom,init-seq = /bits/ 8 <0x1 0x63>;
492};