1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2014-2016, The Linux Foundation. All rights reserved.
6 #include "msm8996.dtsi"
8 #include "pmi8994.dtsi"
9 #include "apq8096-db820c-pins.dtsi"
10 #include "apq8096-db820c-pmic-pins.dtsi"
11 #include <dt-bindings/input/input.h>
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/sound/qcom,q6afe.h>
14 #include <dt-bindings/sound/qcom,q6asm.h>
17 * GPIO name legend: proper name = the GPIO line is used as GPIO
18 * NC = not connected (pin out but not routed from the chip to
20 * "[PER]" = pin is muxed for [peripheral] (not GPIO)
21 * LSEC = Low Speed External Connector
22 * P HSEC = Primary High Speed External Connector
23 * S HSEC = Secondary High Speed External Connector
24 * J14 = Camera Connector
27 * Line names are taken from the schematic "DragonBoard 820c",
28 * drawing no: LM25-P2751-1
30 * For the lines routed to the external connectors the
31 * lines are named after the 96Boards CE Specification 1.0,
32 * Appendix "Expansion Connector Signal Description".
34 * When the 96Board naming of a line and the schematic name of
35 * the same line are in conflict, the 96Board specification
36 * takes precedence, which means that the external UART on the
37 * LSEC is named UART0 while the schematic and SoC names this
38 * UART3. This is only for the informational lines i.e. "[FOO]",
39 * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
40 * ones actually used for GPIO.
45 serial0 = &blsp2_uart1;
46 serial1 = &blsp2_uart2;
47 serial2 = &blsp1_uart1;
56 stdout-path = "serial0:115200n8";
60 compatible = "simple-bus";
62 compatible = "fixed-clock";
64 clock-frequency = <32768>;
65 clock-output-names = "divclk4";
67 pinctrl-names = "default";
68 pinctrl-0 = <&divclk4_pin_a>;
72 compatible = "gpio-gate-clock";
73 pinctrl-0 = <&audio_mclk>;
74 pinctrl-names = "default";
75 clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
77 enable-gpios = <&pm8994_gpios 15 0>;
85 pinctrl-names = "default", "sleep";
86 pinctrl-0 = <&blsp1_uart1_default>;
87 pinctrl-1 = <&blsp1_uart1_sleep>;
90 compatible = "qcom,qca6174-bt";
92 /* bt_disable_n gpio */
93 enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
102 pinctrl-names = "default", "sleep";
103 pinctrl-0 = <&blsp2_uart1_2pins_default>;
104 pinctrl-1 = <&blsp2_uart1_2pins_sleep>;
110 pinctrl-names = "default", "sleep";
111 pinctrl-0 = <&blsp2_uart2_4pins_default>;
112 pinctrl-1 = <&blsp2_uart2_4pins_sleep>;
116 /* On Low speed expansion */
122 /* On Low speed expansion */
128 /* On Low speed expansion */
134 /* On High speed expansion */
140 /* On High speed expansion */
146 /* External SD card */
147 pinctrl-names = "default", "sleep";
148 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
149 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
150 cd-gpios = <&msmgpio 38 0x1>;
151 vmmc-supply = <&pm8994_l21>;
152 vqmmc-supply = <&pm8994_l13>;
166 "[SPI0_DOUT]", /* GPIO_0, BLSP1_SPI_MOSI, LSEC pin 14 */
167 "[SPI0_DIN]", /* GPIO_1, BLSP1_SPI_MISO, LSEC pin 10 */
168 "[SPI0_CS]", /* GPIO_2, BLSP1_SPI_CS_N, LSEC pin 12 */
169 "[SPI0_SCLK]", /* GPIO_3, BLSP1_SPI_CLK, LSEC pin 8 */
170 "[UART1_TxD]", /* GPIO_4, BLSP8_UART_TX, LSEC pin 11 */
171 "[UART1_RxD]", /* GPIO_5, BLSP8_UART_RX, LSEC pin 13 */
172 "[I2C1_SDA]", /* GPIO_6, BLSP8_I2C_SDA, LSEC pin 21 */
173 "[I2C1_SCL]", /* GPIO_7, BLSP8_I2C_SCL, LSEC pin 19 */
174 "GPIO-H", /* GPIO_8, LCD0_RESET_N, LSEC pin 30 */
176 "GPIO-G", /* GPIO_10, MDP_VSYNC_P, LSEC pin 29 */
177 "[MDP_VSYNC_S]", /* GPIO_11, S HSEC pin 55 */
179 "[CSI0_MCLK]", /* GPIO_13, CAM_MCLK0, P HSEC pin 15 */
180 "[CAM_MCLK1]", /* GPIO_14, J14 pin 11 */
181 "[CSI1_MCLK]", /* GPIO_15, CAM_MCLK2, P HSEC pin 17 */
182 "TP99", /* GPIO_16 */
183 "[I2C2_SDA]", /* GPIO_17, CCI_I2C_SDA0, P HSEC pin 34 */
184 "[I2C2_SCL]", /* GPIO_18, CCI_I2C_SCL0, P HSEC pin 32 */
185 "[CCI_I2C_SDA1]", /* GPIO_19, S HSEC pin 38 */
186 "[CCI_I2C_SCL1]", /* GPIO_20, S HSEC pin 36 */
187 "FLASH_STROBE_EN", /* GPIO_21, S HSEC pin 5 */
188 "FLASH_STROBE_TRIG", /* GPIO_22, S HSEC pin 1 */
189 "GPIO-K", /* GPIO_23, CAM2_RST_N, LSEC pin 33 */
190 "GPIO-D", /* GPIO_24, LSEC pin 26 */
191 "GPIO-I", /* GPIO_25, CAM0_RST_N, LSEC pin 31 */
192 "GPIO-J", /* GPIO_26, CAM0_STANDBY_N, LSEC pin 32 */
193 "BLSP6_I2C_SDA", /* GPIO_27 */
194 "BLSP6_I2C_SCL", /* GPIO_28 */
195 "GPIO-B", /* GPIO_29, TS0_RESET_N, LSEC pin 24 */
196 "GPIO30", /* GPIO_30, S HSEC pin 4 */
197 "HDMI_CEC", /* GPIO_31 */
198 "HDMI_DDC_CLOCK", /* GPIO_32 */
199 "HDMI_DDC_DATA", /* GPIO_33 */
200 "HDMI_HOT_PLUG_DETECT", /* GPIO_34 */
201 "PCIE0_RST_N", /* GPIO_35 */
202 "PCIE0_CLKREQ_N", /* GPIO_36 */
203 "PCIE0_WAKE", /* GPIO_37 */
204 "SD_CARD_DET_N", /* GPIO_38 */
205 "TSIF1_SYNC", /* GPIO_39, S HSEC pin 48 */
206 "W_DISABLE_N", /* GPIO_40 */
207 "[BLSP9_UART_TX]", /* GPIO_41 */
208 "[BLSP9_UART_RX]", /* GPIO_42 */
209 "[BLSP2_UART_CTS_N]", /* GPIO_43 */
210 "[BLSP2_UART_RFR_N]", /* GPIO_44 */
211 "[BLSP3_UART_TX]", /* GPIO_45 */
212 "[BLSP3_UART_RX]", /* GPIO_46 */
213 "[I2C0_SDA]", /* GPIO_47, LS_I2C0_SDA, LSEC pin 17 */
214 "[I2C0_SCL]", /* GPIO_48, LS_I2C0_SCL, LSEC pin 15 */
215 "[UART0_TxD]", /* GPIO_49, BLSP9_UART_TX, LSEC pin 5 */
216 "[UART0_RxD]", /* GPIO_50, BLSP9_UART_RX, LSEC pin 7 */
217 "[UART0_CTS]", /* GPIO_51, BLSP9_UART_CTS_N, LSEC pin 3 */
218 "[UART0_RTS]", /* GPIO_52, BLSP9_UART_RFR_N, LSEC pin 9 */
219 "[CODEC_INT1_N]", /* GPIO_53 */
220 "[CODEC_INT2_N]", /* GPIO_54 */
221 "[BLSP7_I2C_SDA]", /* GPIO_55 */
222 "[BLSP7_I2C_SCL]", /* GPIO_56 */
223 "MI2S_MCLK", /* GPIO_57, S HSEC pin 3 */
224 "[PCM_CLK]", /* GPIO_58, QUA_MI2S_SCK, LSEC pin 18 */
225 "[PCM_FS]", /* GPIO_59, QUA_MI2S_WS, LSEC pin 16 */
226 "[PCM_DO]", /* GPIO_60, QUA_MI2S_DATA0, LSEC pin 20 */
227 "[PCM_DI]", /* GPIO_61, QUA_MI2S_DATA1, LSEC pin 22 */
228 "GPIO-E", /* GPIO_62, LSEC pin 27 */
229 "TP87", /* GPIO_63 */
230 "[CODEC_RST_N]", /* GPIO_64 */
231 "[PCM1_CLK]", /* GPIO_65 */
232 "[PCM1_SYNC]", /* GPIO_66 */
233 "[PCM1_DIN]", /* GPIO_67 */
234 "[PCM1_DOUT]", /* GPIO_68 */
235 "AUDIO_REF_CLK", /* GPIO_69 */
236 "SLIMBUS_CLK", /* GPIO_70 */
237 "SLIMBUS_DATA0", /* GPIO_71 */
238 "SLIMBUS_DATA1", /* GPIO_72 */
243 "TP94", /* GPIO_77 */
245 "TP95", /* GPIO_79 */
246 "GPIO-A", /* GPIO_80, MEMS_RESET_N, LSEC pin 23 */
247 "TP88", /* GPIO_81 */
248 "TP89", /* GPIO_82 */
249 "TP90", /* GPIO_83 */
250 "TP91", /* GPIO_84 */
251 "[SD_DAT0]", /* GPIO_85, BLSP12_SPI_MOSI, P HSEC pin 1 */
252 "[SD_CMD]", /* GPIO_86, BLSP12_SPI_MISO, P HSEC pin 11 */
253 "[SD_DAT3]", /* GPIO_87, BLSP12_SPI_CS_N, P HSEC pin 7 */
254 "[SD_SCLK]", /* GPIO_88, BLSP12_SPI_CLK, P HSEC pin 9 */
255 "TSIF1_CLK", /* GPIO_89, S HSEC pin 42 */
256 "TSIF1_EN", /* GPIO_90, S HSEC pin 46 */
257 "TSIF1_DATA", /* GPIO_91, S HSEC pin 44 */
259 "TSIF2_CLK", /* GPIO_93, S HSEC pin 52 */
260 "TSIF2_EN", /* GPIO_94, S HSEC pin 56 */
261 "TSIF2_DATA", /* GPIO_95, S HSEC pin 54 */
262 "TSIF2_SYNC", /* GPIO_96, S HSEC pin 58 */
264 "CAM1_STANDBY_N", /* GPIO_98 */
267 "[LCD1_RESET_N]", /* GPIO_101, S HSEC pin 51 */
268 "BOOT_CONFIG1", /* GPIO_102 */
269 "USB_HUB_RESET", /* GPIO_103 */
270 "CAM1_RST_N", /* GPIO_104 */
279 "PMI8994_BUA", /* GPIO_113 */
280 "PCIE2_RST_N", /* GPIO_114 */
281 "PCIE2_CLKREQ_N", /* GPIO_115 */
282 "PCIE2_WAKE", /* GPIO_116 */
283 "SSC_IRQ_0", /* GPIO_117 */
284 "SSC_IRQ_1", /* GPIO_118 */
285 "SSC_IRQ_2", /* GPIO_119 */
287 "GPIO121", /* GPIO_121, S HSEC pin 2 */
289 "SSC_IRQ_6", /* GPIO_123 */
290 "SSC_IRQ_7", /* GPIO_124 */
291 "GPIO-C", /* GPIO_125, TS_INT0, LSEC pin 25 */
292 "BOOT_CONFIG5", /* GPIO_126 */
295 "BOOT_CONFIG7", /* GPIO_129 */
296 "PCIE1_RST_N", /* GPIO_130 */
297 "PCIE1_CLKREQ_N", /* GPIO_131 */
298 "PCIE1_WAKE", /* GPIO_132 */
299 "GPIO-L", /* GPIO_133, CAM2_STANDBY_N, LSEC pin 34 */
302 "BOOT_CONFIG8", /* GPIO_136 */
305 "GPS_SSBI2", /* GPIO_139 */
306 "GPS_SSBI1", /* GPIO_140 */
310 "BOOT_CONFIG6", /* GPIO_144 */
326 "GPIO-F", /* BL0_PWM, LSEC pin 28 */
403 compatible = "linux,extcon-usb-gpio";
404 id-gpio = <&pm8994_gpios 22 GPIO_ACTIVE_HIGH>;
405 pinctrl-names = "default";
406 pinctrl-0 = <&usb3_vbus_det_gpio>;
416 maximum-speed = "high-speed";
421 compatible = "linux,extcon-usb-gpio";
422 id-gpio = <&pmi8994_gpios 6 GPIO_ACTIVE_HIGH>;
423 pinctrl-names = "default";
424 pinctrl-0 = <&usb2_vbus_det_gpio>;
427 wlan_en: wlan-en-1-8v {
428 pinctrl-names = "default";
429 pinctrl-0 = <&wlan_en_gpios>;
430 compatible = "regulator-fixed";
431 regulator-name = "wlan-en-regulator";
432 regulator-min-microvolt = <1800000>;
433 regulator-max-microvolt = <1800000>;
435 gpio = <&pm8994_gpios 8 0>;
437 /* WLAN card specific delay */
438 startup-delay-us = <70000>;
445 perst-gpio = <&msmgpio 35 GPIO_ACTIVE_LOW>;
446 vddpe-3v3-supply = <&wlan_en>;
451 perst-gpio = <&msmgpio 130 GPIO_ACTIVE_LOW>;
456 perst-gpio = <&msmgpio 114 GPIO_ACTIVE_LOW>;
460 slim_msm: slim@91c0000 {
463 clock-names = "mclk", "slimbus";
464 clocks = <&div1_mclk>,
465 <&rpmcc RPM_SMD_BB_CLK1>;
480 vddio-supply = <&pm8994_l12>;
481 vcca-supply = <&pm8994_l28>;
488 pinctrl-names = "default", "sleep";
489 pinctrl-0 = <&hdmi_hpd_active &hdmi_ddc_active>;
490 pinctrl-1 = <&hdmi_hpd_suspend &hdmi_ddc_suspend>;
492 core-vdda-supply = <&pm8994_l12>;
493 core-vcc-supply = <&pm8994_s4>;
500 compatible = "gpio-keys";
501 #address-cells = <1>;
505 pinctrl-names = "default";
506 pinctrl-0 = <&volume_up_gpio>;
510 linux,code = <KEY_VOLUMEUP>;
511 gpios = <&pm8994_gpios 2 GPIO_ACTIVE_LOW>;
518 vdd_l1-supply = <&pm8994_s3>;
519 vdd_l2_l26_l28-supply = <&pm8994_s3>;
520 vdd_l3_l11-supply = <&pm8994_s3>;
521 vdd_l4_l27_l31-supply = <&pm8994_s3>;
522 vdd_l5_l7-supply = <&pm8994_s5>;
523 vdd_l14_l15-supply = <&pm8994_s5>;
524 vdd_l20_l21-supply = <&pm8994_s5>;
525 vdd_l25-supply = <&pm8994_s3>;
528 regulator-min-microvolt = <1300000>;
529 regulator-max-microvolt = <1300000>;
533 * 1.8v required on LS expansion
534 * for mezzanine boards
537 regulator-min-microvolt = <1800000>;
538 regulator-max-microvolt = <1800000>;
542 regulator-min-microvolt = <2150000>;
543 regulator-max-microvolt = <2150000>;
546 regulator-min-microvolt = <800000>;
547 regulator-max-microvolt = <800000>;
551 regulator-min-microvolt = <1000000>;
552 regulator-max-microvolt = <1000000>;
555 regulator-min-microvolt = <1250000>;
556 regulator-max-microvolt = <1250000>;
559 regulator-min-microvolt = <850000>;
560 regulator-max-microvolt = <850000>;
563 regulator-min-microvolt = <1225000>;
564 regulator-max-microvolt = <1225000>;
567 regulator-min-microvolt = <1200000>;
568 regulator-max-microvolt = <1200000>;
571 regulator-min-microvolt = <1800000>;
572 regulator-max-microvolt = <1800000>;
575 regulator-min-microvolt = <1800000>;
576 regulator-max-microvolt = <1800000>;
579 regulator-min-microvolt = <1800000>;
580 regulator-max-microvolt = <1800000>;
583 regulator-min-microvolt = <1150000>;
584 regulator-max-microvolt = <1150000>;
587 regulator-min-microvolt = <1800000>;
588 regulator-max-microvolt = <1800000>;
591 regulator-min-microvolt = <1800000>;
592 regulator-max-microvolt = <2950000>;
595 regulator-min-microvolt = <1800000>;
596 regulator-max-microvolt = <1800000>;
599 regulator-min-microvolt = <1800000>;
600 regulator-max-microvolt = <1800000>;
603 regulator-min-microvolt = <2700000>;
604 regulator-max-microvolt = <2700000>;
607 regulator-min-microvolt = <2500000>;
608 regulator-max-microvolt = <2500000>;
611 regulator-min-microvolt = <2700000>;
612 regulator-max-microvolt = <2900000>;
615 regulator-min-microvolt = <3000000>;
616 regulator-max-microvolt = <3000000>;
619 regulator-min-microvolt = <2950000>;
620 regulator-max-microvolt = <2950000>;
621 regulator-allow-set-load;
624 regulator-min-microvolt = <2950000>;
625 regulator-max-microvolt = <2950000>;
628 regulator-min-microvolt = <3300000>;
629 regulator-max-microvolt = <3300000>;
632 regulator-min-microvolt = <2800000>;
633 regulator-max-microvolt = <2800000>;
636 regulator-min-microvolt = <3075000>;
637 regulator-max-microvolt = <3075000>;
640 regulator-min-microvolt = <1200000>;
641 regulator-max-microvolt = <1200000>;
642 regulator-allow-set-load;
645 regulator-min-microvolt = <1000000>;
646 regulator-max-microvolt = <1000000>;
649 regulator-min-microvolt = <925000>;
650 regulator-max-microvolt = <925000>;
651 regulator-allow-set-load;
654 regulator-min-microvolt = <2800000>;
655 regulator-max-microvolt = <2800000>;
658 regulator-min-microvolt = <1800000>;
659 regulator-max-microvolt = <1800000>;
662 regulator-min-microvolt = <1800000>;
663 regulator-max-microvolt = <1800000>;
674 compatible = "qcom,pm8941-resin";
675 interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
678 linux,code = <KEY_VOLUMEDOWN>;
685 compatible = "qcom,apq8096-sndcard";
687 audio-routing = "RX_BIAS", "MCLK";
690 link-name = "MultiMedia1";
692 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA1>;
697 link-name = "MultiMedia2";
699 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA2>;
704 link-name = "MultiMedia3";
706 sound-dai = <&q6asmdai MSM_FRONTEND_DAI_MULTIMEDIA3>;
713 sound-dai = <&q6afedai HDMI_RX>;
717 sound-dai = <&q6routing>;
721 sound-dai = <&hdmi 0>;
726 link-name = "SLIM Playback";
728 sound-dai = <&q6afedai SLIMBUS_6_RX>;
732 sound-dai = <&q6routing>;
736 sound-dai = <&wcd9335 6>;
741 link-name = "SLIM Capture";
743 sound-dai = <&q6afedai SLIMBUS_0_TX>;
747 sound-dai = <&q6routing>;
751 sound-dai = <&wcd9335 1>;