1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3 * Copyright (c) 2015, The Linux Foundation. All rights reserved.
4 */
5
6 #include "msm8916-pm8916.dtsi"
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
10 #include <dt-bindings/pinctrl/qcom,pmic-mpp.h>
11 #include <dt-bindings/sound/apq8016-lpass.h>
12
13 / {
14 aliases {
15 serial0 = &blsp1_uart2;
16 serial1 = &blsp1_uart1;
17 usid0 = &pm8916_0;
18 i2c0 = &blsp_i2c2;
19 i2c1 = &blsp_i2c6;
20 i2c3 = &blsp_i2c4;
21 spi0 = &blsp_spi5;
22 spi1 = &blsp_spi3;
23 };
24
25 chosen {
26 stdout-path = "serial0";
27 };
28
29 camera_vdddo_1v8: camera-vdddo-1v8 {
30 compatible = "regulator-fixed";
31 regulator-name = "camera_vdddo";
32 regulator-min-microvolt = <1800000>;
33 regulator-max-microvolt = <1800000>;
34 regulator-always-on;
35 };
36
37 camera_vdda_2v8: camera-vdda-2v8 {
38 compatible = "regulator-fixed";
39 regulator-name = "camera_vdda";
40 regulator-min-microvolt = <2800000>;
41 regulator-max-microvolt = <2800000>;
42 regulator-always-on;
43 };
44
45 camera_vddd_1v5: camera-vddd-1v5 {
46 compatible = "regulator-fixed";
47 regulator-name = "camera_vddd";
48 regulator-min-microvolt = <1500000>;
49 regulator-max-microvolt = <1500000>;
50 regulator-always-on;
51 };
52
53 reserved-memory {
54 ramoops@bff00000 {
55 compatible = "ramoops";
56 reg = <0x0 0xbff00000 0x0 0x100000>;
57
58 record-size = <0x20000>;
59 console-size = <0x20000>;
60 ftrace-size = <0x20000>;
61 };
62 };
63
64 usb2513 {
65 compatible = "smsc,usb3503";
66 reset-gpios = <&pm8916_gpios 3 GPIO_ACTIVE_LOW>;
67 initial-mode = <1>;
68 };
69
70 usb_id: usb-id {
71 compatible = "linux,extcon-usb-gpio";
72 id-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>;
73 pinctrl-names = "default";
74 pinctrl-0 = <&usb_id_default>;
75 };
76
77 hdmi-out {
78 compatible = "hdmi-connector";
79 type = "a";
80
81 port {
82 hdmi_con: endpoint {
83 remote-endpoint = <&adv7533_out>;
84 };
85 };
86 };
87
88 gpio-keys {
89 compatible = "gpio-keys";
90 #address-cells = <1>;
91 #size-cells = <0>;
92 autorepeat;
93
94 pinctrl-names = "default";
95 pinctrl-0 = <&msm_key_volp_n_default>;
96
97 button@0 {
98 label = "Volume Up";
99 linux,code = <KEY_VOLUMEUP>;
100 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
101 };
102 };
103
104 leds {
105 pinctrl-names = "default";
106 pinctrl-0 = <&msmgpio_leds>,
107 <&pm8916_gpios_leds>,
108 <&pm8916_mpps_leds>;
109
110 compatible = "gpio-leds";
111
112 led@1 {
113 label = "apq8016-sbc:green:user1";
114 gpios = <&msmgpio 21 GPIO_ACTIVE_HIGH>;
115 linux,default-trigger = "heartbeat";
116 default-state = "off";
117 };
118
119 led@2 {
120 label = "apq8016-sbc:green:user2";
121 gpios = <&msmgpio 120 GPIO_ACTIVE_HIGH>;
122 linux,default-trigger = "mmc0";
123 default-state = "off";
124 };
125
126 led@3 {
127 label = "apq8016-sbc:green:user3";
128 gpios = <&pm8916_gpios 1 GPIO_ACTIVE_HIGH>;
129 linux,default-trigger = "mmc1";
130 default-state = "off";
131 };
132
133 led@4 {
134 label = "apq8016-sbc:green:user4";
135 gpios = <&pm8916_gpios 2 GPIO_ACTIVE_HIGH>;
136 linux,default-trigger = "none";
137 panic-indicator;
138 default-state = "off";
139 };
140
141 led@5 {
142 label = "apq8016-sbc:yellow:wlan";
143 gpios = <&pm8916_mpps 2 GPIO_ACTIVE_HIGH>;
144 linux,default-trigger = "phy0tx";
145 default-state = "off";
146 };
147
148 led@6 {
149 label = "apq8016-sbc:blue:bt";
150 gpios = <&pm8916_mpps 3 GPIO_ACTIVE_HIGH>;
151 linux,default-trigger = "bluetooth-power";
152 default-state = "off";
153 };
154 };
155 };
156
157 &blsp_dma {
158 status = "okay";
159 };
160
161 &blsp_i2c2 {
162 /* On Low speed expansion */
163 status = "okay";
164 label = "LS-I2C0";
165 };
166
167 &blsp_i2c4 {
168 /* On High speed expansion */
169 status = "okay";
170 label = "HS-I2C2";
171
172 adv_bridge: bridge@39 {
173 status = "okay";
174
175 compatible = "adi,adv7533";
176 reg = <0x39>;
177
178 interrupt-parent = <&msmgpio>;
179 interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
180
181 adi,dsi-lanes = <4>;
182 clocks = <&rpmcc RPM_SMD_BB_CLK2>;
183 clock-names = "cec";
184
185 pd-gpios = <&msmgpio 32 GPIO_ACTIVE_HIGH>;
186
187 avdd-supply = <&pm8916_l6>;
188 v1p2-supply = <&pm8916_l6>;
189 v3p3-supply = <&pm8916_l17>;
190
191 pinctrl-names = "default","sleep";
192 pinctrl-0 = <&adv7533_int_active &adv7533_switch_active>;
193 pinctrl-1 = <&adv7533_int_suspend &adv7533_switch_suspend>;
194 #sound-dai-cells = <1>;
195
196 ports {
197 #address-cells = <1>;
198 #size-cells = <0>;
199
200 port@0 {
201 reg = <0>;
202 adv7533_in: endpoint {
203 remote-endpoint = <&dsi0_out>;
204 };
205 };
206
207 port@1 {
208 reg = <1>;
209 adv7533_out: endpoint {
210 remote-endpoint = <&hdmi_con>;
211 };
212 };
213 };
214 };
215 };
216
217 &blsp_i2c6 {
218 /* On Low speed expansion */
219 status = "okay";
220 label = "LS-I2C1";
221 };
222
223 &blsp_spi3 {
224 /* On High speed expansion */
225 status = "okay";
226 label = "HS-SPI1";
227 };
228
229 &blsp_spi5 {
230 /* On Low speed expansion */
231 status = "okay";
232 label = "LS-SPI0";
233 };
234
235 &blsp1_uart1 {
236 status = "okay";
237 label = "LS-UART0";
238 };
239
240 &blsp1_uart2 {
241 status = "okay";
242 label = "LS-UART1";
243 };
244
245 &camss {
246 status = "okay";
247 ports {
248 port@0 {
249 reg = <0>;
250 csiphy0_ep: endpoint {
251 clock-lanes = <1>;
252 data-lanes = <0 2>;
253 remote-endpoint = <&ov5640_ep>;
254 status = "okay";
255 };
256 };
257 };
258 };
259
260 &cci {
261 status = "okay";
262 };
263
264 &cci_i2c0 {
265 camera_rear@3b {
266 compatible = "ovti,ov5640";
267 reg = <0x3b>;
268
269 enable-gpios = <&msmgpio 34 GPIO_ACTIVE_HIGH>;
270 reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>;
271 pinctrl-names = "default";
272 pinctrl-0 = <&camera_rear_default>;
273
274 clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
275 clock-names = "xclk";
276 clock-frequency = <23880000>;
277
278 vdddo-supply = <&camera_vdddo_1v8>;
279 vdda-supply = <&camera_vdda_2v8>;
280 vddd-supply = <&camera_vddd_1v5>;
281
282 /* No camera mezzanine by default */
283 status = "disabled";
284
285 port {
286 ov5640_ep: endpoint {
287 clock-lanes = <1>;
288 data-lanes = <0 2>;
289 remote-endpoint = <&csiphy0_ep>;
290 };
291 };
292 };
293 };
294
295 &dsi0_out {
296 data-lanes = <0 1 2 3>;
297 remote-endpoint = <&adv7533_in>;
298 };
299
300 &lpass {
301 status = "okay";
302 };
303
304 &mdss {
305 status = "okay";
306 };
307
308 &pm8916_resin {
309 status = "okay";
310 linux,code = <KEY_VOLUMEDOWN>;
311 };
312
313 &pronto {
314 status = "okay";
315 };
316
317 &sdhc_1 {
318 status = "okay";
319
320 pinctrl-names = "default", "sleep";
321 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
322 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
323 };
324
325 &sdhc_2 {
326 status = "okay";
327
328 pinctrl-names = "default", "sleep";
329 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
330 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
331
332 cd-gpios = <&msmgpio 38 GPIO_ACTIVE_LOW>;
333 };
334
335 &sound {
336 status = "okay";
337
338 pinctrl-0 = <&cdc_pdm_lines_act &ext_sec_tlmm_lines_act &ext_mclk_tlmm_lines_act>;
339 pinctrl-1 = <&cdc_pdm_lines_sus &ext_sec_tlmm_lines_sus &ext_mclk_tlmm_lines_sus>;
340 pinctrl-names = "default", "sleep";
341 qcom,model = "DB410c";
342 qcom,audio-routing =
343 "AMIC2", "MIC BIAS Internal2",
344 "AMIC3", "MIC BIAS External1";
345
346 external-dai-link@0 {
347 link-name = "ADV7533";
348 cpu {
349 sound-dai = <&lpass MI2S_QUATERNARY>;
350 };
351 codec {
352 sound-dai = <&adv_bridge 0>;
353 };
354 };
355
356 internal-codec-playback-dai-link@0 {
357 link-name = "WCD";
358 cpu {
359 sound-dai = <&lpass MI2S_PRIMARY>;
360 };
361 codec {
362 sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;
363 };
364 };
365
366 internal-codec-capture-dai-link@0 {
367 link-name = "WCD-Capture";
368 cpu {
369 sound-dai = <&lpass MI2S_TERTIARY>;
370 };
371 codec {
372 sound-dai = <&lpass_codec 1>, <&wcd_codec 1>;
373 };
374 };
375 };
376
377 &usb {
378 status = "okay";
379 extcon = <&usb_id>, <&usb_id>;
380
381 pinctrl-names = "default", "device";
382 pinctrl-0 = <&usb_sw_sel_pm &usb_hub_reset_pm>;
383 pinctrl-1 = <&usb_sw_sel_pm_device &usb_hub_reset_pm_device>;
384 };
385
386 &usb_hs_phy {
387 extcon = <&usb_id>;
388 };
389
390 &wcd_codec {
391 clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>;
392 clock-names = "mclk";
393 qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
394 qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
395 };
396
397 /* Enable CoreSight */
398 &cti0 { status = "okay"; };
399 &cti1 { status = "okay"; };
400 &cti12 { status = "okay"; };
401 &cti13 { status = "okay"; };
402 &cti14 { status = "okay"; };
403 &cti15 { status = "okay"; };
404 &debug0 { status = "okay"; };
405 &debug1 { status = "okay"; };
406 &debug2 { status = "okay"; };
407 &debug3 { status = "okay"; };
408 &etf { status = "okay"; };
409 &etm0 { status = "okay"; };
410 &etm1 { status = "okay"; };
411 &etm2 { status = "okay"; };
412 &etm3 { status = "okay"; };
413 &etr { status = "okay"; };
414 &funnel0 { status = "okay"; };
415 &funnel1 { status = "okay"; };
416 &replicator { status = "okay"; };
417 &stm { status = "okay"; };
418 &tpiu { status = "okay"; };
419
420 &smd_rpm_regulators {
421 vdd_l1_l2_l3-supply = <&pm8916_s3>;
422 vdd_l4_l5_l6-supply = <&pm8916_s4>;
423 vdd_l7-supply = <&pm8916_s4>;
424
425 s3 {
426 regulator-min-microvolt = <375000>;
427 regulator-max-microvolt = <1562000>;
428 };
429
430 s4 {
431 regulator-min-microvolt = <1800000>;
432 regulator-max-microvolt = <1800000>;
433
434 regulator-always-on;
435 regulator-boot-on;
436 };
437
438 l1 {
439 regulator-min-microvolt = <375000>;
440 regulator-max-microvolt = <1525000>;
441 };
442
443 l2 {
444 regulator-min-microvolt = <1200000>;
445 regulator-max-microvolt = <1200000>;
446 };
447
448 l4 {
449 regulator-min-microvolt = <1750000>;
450 regulator-max-microvolt = <3337000>;
451 };
452
453 l5 {
454 regulator-min-microvolt = <1750000>;
455 regulator-max-microvolt = <3337000>;
456 };
457
458 l6 {
459 regulator-min-microvolt = <1800000>;
460 regulator-max-microvolt = <1800000>;
461 };
462
463 l7 {
464 regulator-min-microvolt = <1750000>;
465 regulator-max-microvolt = <3337000>;
466 };
467
468 l8 {
469 regulator-min-microvolt = <1750000>;
470 regulator-max-microvolt = <3337000>;
471 };
472
473 l9 {
474 regulator-min-microvolt = <1750000>;
475 regulator-max-microvolt = <3337000>;
476 };
477
478 l10 {
479 regulator-min-microvolt = <1750000>;
480 regulator-max-microvolt = <3337000>;
481 };
482
483 l11 {
484 regulator-min-microvolt = <1750000>;
485 regulator-max-microvolt = <3337000>;
486 regulator-allow-set-load;
487 regulator-system-load = <200000>;
488 };
489
490 l12 {
491 regulator-min-microvolt = <1750000>;
492 regulator-max-microvolt = <3337000>;
493 };
494
495 l13 {
496 regulator-min-microvolt = <1750000>;
497 regulator-max-microvolt = <3337000>;
498 };
499
500 l14 {
501 regulator-min-microvolt = <1750000>;
502 regulator-max-microvolt = <3337000>;
503 };
504
505 /**
506 * 1.8v required on LS expansion
507 * for mezzanine boards
508 */
509 l15 {
510 regulator-min-microvolt = <1750000>;
511 regulator-max-microvolt = <3337000>;
512 regulator-always-on;
513 };
514
515 l16 {
516 regulator-min-microvolt = <1750000>;
517 regulator-max-microvolt = <3337000>;
518 };
519
520 l17 {
521 regulator-min-microvolt = <3300000>;
522 regulator-max-microvolt = <3300000>;
523 };
524
525 l18 {
526 regulator-min-microvolt = <1750000>;
527 regulator-max-microvolt = <3337000>;
528 };
529 };
530
531 /*
532 * 2mA drive strength is not enough when connecting multiple
533 * I2C devices with different pull up resistors.
534 */
535 &i2c2_default {
536 drive-strength = <16>;
537 };
538
539 &i2c4_default {
540 drive-strength = <16>;
541 };
542
543 &i2c6_default {
544 drive-strength = <16>;
545 };
546
547 /*
548 * GPIO name legend: proper name = the GPIO line is used as GPIO
549 * NC = not connected (pin out but not routed from the chip to
550 * anything the board)
551 * "[PER]" = pin is muxed for [peripheral] (not GPIO)
552 * LSEC = Low Speed External Connector
553 * HSEC = High Speed External Connector
554 *
555 * Line names are taken from the schematic "DragonBoard410c"
556 * dated monday, august 31, 2015. Page 5 in particular.
557 *
558 * For the lines routed to the external connectors the
559 * lines are named after the 96Boards CE Specification 1.0,
560 * Appendix "Expansion Connector Signal Description".
561 *
562 * When the 96Board naming of a line and the schematic name of
563 * the same line are in conflict, the 96Board specification
564 * takes precedence, which means that the external UART on the
565 * LSEC is named UART0 while the schematic and SoC names this
566 * UART3. This is only for the informational lines i.e. "[FOO]",
567 * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
568 * ones actually used for GPIO.
569 */
570
571 &msmgpio {
572 gpio-line-names =
573 "[UART0_TX]", /* GPIO_0, LSEC pin 5 */
574 "[UART0_RX]", /* GPIO_1, LSEC pin 7 */
575 "[UART0_CTS_N]", /* GPIO_2, LSEC pin 3 */
576 "[UART0_RTS_N]", /* GPIO_3, LSEC pin 9 */
577 "[UART1_TX]", /* GPIO_4, LSEC pin 11 */
578 "[UART1_RX]", /* GPIO_5, LSEC pin 13 */
579 "[I2C0_SDA]", /* GPIO_8, LSEC pin 17 */
580 "[I2C0_SCL]", /* GPIO_7, LSEC pin 15 */
581 "[SPI1_DOUT]", /* SPI1_MOSI, HSEC pin 1 */
582 "[SPI1_DIN]", /* SPI1_MISO, HSEC pin 11 */
583 "[SPI1_CS]", /* SPI1_CS_N, HSEC pin 7 */
584 "[SPI1_SCLK]", /* SPI1_CLK, HSEC pin 9 */
585 "GPIO-B", /* LS_EXP_GPIO_B, LSEC pin 24 */
586 "GPIO-C", /* LS_EXP_GPIO_C, LSEC pin 25 */
587 "[I2C3_SDA]", /* HSEC pin 38 */
588 "[I2C3_SCL]", /* HSEC pin 36 */
589 "[SPI0_MOSI]", /* LSEC pin 14 */
590 "[SPI0_MISO]", /* LSEC pin 10 */
591 "[SPI0_CS_N]", /* LSEC pin 12 */
592 "[SPI0_CLK]", /* LSEC pin 8 */
593 "HDMI_HPD_N", /* GPIO 20 */
594 "USR_LED_1_CTRL",
595 "[I2C1_SDA]", /* GPIO_22, LSEC pin 21 */
596 "[I2C1_SCL]", /* GPIO_23, LSEC pin 19 */
597 "GPIO-G", /* LS_EXP_GPIO_G, LSEC pin 29 */
598 "GPIO-H", /* LS_EXP_GPIO_H, LSEC pin 30 */
599 "[CSI0_MCLK]", /* HSEC pin 15 */
600 "[CSI1_MCLK]", /* HSEC pin 17 */
601 "GPIO-K", /* LS_EXP_GPIO_K, LSEC pin 33 */
602 "[I2C2_SDA]", /* HSEC pin 34 */
603 "[I2C2_SCL]", /* HSEC pin 32 */
604 "DSI2HDMI_INT_N",
605 "DSI_SW_SEL_APQ",
606 "GPIO-L", /* LS_EXP_GPIO_L, LSEC pin 34 */
607 "GPIO-J", /* LS_EXP_GPIO_J, LSEC pin 32 */
608 "GPIO-I", /* LS_EXP_GPIO_I, LSEC pin 31 */
609 "GPIO-A", /* LS_EXP_GPIO_A, LSEC pin 23 */
610 "FORCED_USB_BOOT",
611 "SD_CARD_DET_N",
612 "[WCSS_BT_SSBI]",
613 "[WCSS_WLAN_DATA_2]", /* GPIO 40 */
614 "[WCSS_WLAN_DATA_1]",
615 "[WCSS_WLAN_DATA_0]",
616 "[WCSS_WLAN_SET]",
617 "[WCSS_WLAN_CLK]",
618 "[WCSS_FM_SSBI]",
619 "[WCSS_FM_SDI]",
620 "[WCSS_BT_DAT_CTL]",
621 "[WCSS_BT_DAT_STB]",
622 "NC",
623 "NC", /* GPIO 50 */
624 "NC",
625 "NC",
626 "NC",
627 "NC",
628 "NC",
629 "NC",
630 "NC",
631 "NC",
632 "NC",
633 "NC", /* GPIO 60 */
634 "NC",
635 "NC",
636 "[CDC_PDM0_CLK]",
637 "[CDC_PDM0_SYNC]",
638 "[CDC_PDM0_TX0]",
639 "[CDC_PDM0_RX0]",
640 "[CDC_PDM0_RX1]",
641 "[CDC_PDM0_RX2]",
642 "GPIO-D", /* LS_EXP_GPIO_D, LSEC pin 26 */
643 "NC", /* GPIO 70 */
644 "NC",
645 "NC",
646 "NC",
647 "NC", /* GPIO 74 */
648 "NC",
649 "NC",
650 "NC",
651 "NC",
652 "NC",
653 "BOOT_CONFIG_0", /* GPIO 80 */
654 "BOOT_CONFIG_1",
655 "BOOT_CONFIG_2",
656 "BOOT_CONFIG_3",
657 "NC",
658 "NC",
659 "BOOT_CONFIG_5",
660 "NC",
661 "NC",
662 "NC",
663 "NC", /* GPIO 90 */
664 "NC",
665 "NC",
666 "NC",
667 "NC",
668 "NC",
669 "NC",
670 "NC",
671 "NC",
672 "NC",
673 "NC", /* GPIO 100 */
674 "NC",
675 "NC",
676 "NC",
677 "SSBI_GPS",
678 "NC",
679 "NC",
680 "KEY_VOLP_N",
681 "NC",
682 "NC",
683 "[LS_EXP_MI2S_WS]", /* GPIO 110 */
684 "NC",
685 "NC",
686 "[LS_EXP_MI2S_SCK]",
687 "[LS_EXP_MI2S_DATA0]",
688 "GPIO-E", /* LS_EXP_GPIO_E, LSEC pin 27 */
689 "NC",
690 "[DSI2HDMI_MI2S_WS]",
691 "[DSI2HDMI_MI2S_SCK]",
692 "[DSI2HDMI_MI2S_DATA0]",
693 "USR_LED_2_CTRL", /* GPIO 120 */
694 "SB_HS_ID";
695
696 msmgpio_leds: msmgpio-leds {
697 pins = "gpio21", "gpio120";
698 function = "gpio";
699
700 output-low;
701 };
702
703 usb_id_default: usb-id-default {
704 pins = "gpio121";
705 function = "gpio";
706
707 drive-strength = <8>;
708 input-enable;
709 bias-pull-up;
710 };
711
712 adv7533_int_active: adv533-int-active {
713 pins = "gpio31";
714 function = "gpio";
715
716 drive-strength = <16>;
717 bias-disable;
718 };
719
720 adv7533_int_suspend: adv7533-int-suspend {
721 pins = "gpio31";
722 function = "gpio";
723
724 drive-strength = <2>;
725 bias-disable;
726 };
727
728 adv7533_switch_active: adv7533-switch-active {
729 pins = "gpio32";
730 function = "gpio";
731
732 drive-strength = <16>;
733 bias-disable;
734 };
735
736 adv7533_switch_suspend: adv7533-switch-suspend {
737 pins = "gpio32";
738 function = "gpio";
739
740 drive-strength = <2>;
741 bias-disable;
742 };
743
744 msm_key_volp_n_default: msm-key-volp-n-default {
745 pins = "gpio107";
746 function = "gpio";
747
748 drive-strength = <8>;
749 input-enable;
750 bias-pull-up;
751 };
752 };
753
754 &pm8916_gpios {
755 gpio-line-names =
756 "USR_LED_3_CTRL",
757 "USR_LED_4_CTRL",
758 "USB_HUB_RESET_N_PM",
759 "USB_SW_SEL_PM";
760
761 usb_hub_reset_pm: usb-hub-reset-pm {
762 pins = "gpio3";
763 function = PMIC_GPIO_FUNC_NORMAL;
764
765 input-disable;
766 output-high;
767 };
768
769 usb_hub_reset_pm_device: usb-hub-reset-pm-device {
770 pins = "gpio3";
771 function = PMIC_GPIO_FUNC_NORMAL;
772
773 output-low;
774 };
775
776 usb_sw_sel_pm: usb-sw-sel-pm {
777 pins = "gpio4";
778 function = PMIC_GPIO_FUNC_NORMAL;
779
780 power-source = <PM8916_GPIO_VPH>;
781 input-disable;
782 output-high;
783 };
784
785 usb_sw_sel_pm_device: usb-sw-sel-pm-device {
786 pins = "gpio4";
787 function = PMIC_GPIO_FUNC_NORMAL;
788
789 power-source = <PM8916_GPIO_VPH>;
790 input-disable;
791 output-low;
792 };
793
794 pm8916_gpios_leds: pm8916-gpios-leds {
795 pins = "gpio1", "gpio2";
796 function = PMIC_GPIO_FUNC_NORMAL;
797
798 output-low;
799 };
800 };
801
802 &pm8916_mpps {
803 gpio-line-names =
804 "VDD_PX_BIAS",
805 "WLAN_LED_CTRL",
806 "BT_LED_CTRL",
807 "GPIO-F"; /* LS_EXP_GPIO_F, LSEC pin 28 */
808
809 pinctrl-names = "default";
810 pinctrl-0 = <&ls_exp_gpio_f>;
811
812 ls_exp_gpio_f: pm8916-mpp4 {
813 pins = "mpp4";
814 function = "digital";
815
816 output-low;
817 power-source = <PM8916_MPP_L5>; // 1.8V
818 };
819
820 pm8916_mpps_leds: pm8916-mpps-leds {
821 pins = "mpp2", "mpp3";
822 function = "digital";
823
824 output-low;
825 };
826 };
Cache object: 9effef0da335e8a5d6f8fe5e7983249d
|