1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (c) 2014-2016, The Linux Foundation. All rights reserved.
4 */
5
6#include "msm8996.dtsi"
7#include "pm8994.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>
15
16/*
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
19 *                   anything the board)
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
25 *         TP      = Test Points
26 *
27 * Line names are taken from the schematic "DragonBoard 820c",
28 * drawing no: LM25-P2751-1
29 *
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".
33 *
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.
41 */
42
43/ {
44	aliases {
45		serial0 = &blsp2_uart1;
46		serial1 = &blsp2_uart2;
47		serial2 = &blsp1_uart1;
48		i2c0	= &blsp1_i2c2;
49		i2c1	= &blsp2_i2c1;
50		i2c2	= &blsp2_i2c0;
51		spi0	= &blsp1_spi0;
52		spi1	= &blsp2_spi5;
53	};
54
55	chosen {
56		stdout-path = "serial0:115200n8";
57	};
58
59	clocks {
60		compatible = "simple-bus";
61		divclk4: divclk4 {
62			compatible = "fixed-clock";
63			#clock-cells = <0>;
64			clock-frequency = <32768>;
65			clock-output-names = "divclk4";
66
67			pinctrl-names = "default";
68			pinctrl-0 = <&divclk4_pin_a>;
69		};
70
71		div1_mclk: divclk1 {
72			compatible = "gpio-gate-clock";
73			pinctrl-0 = <&audio_mclk>;
74			pinctrl-names = "default";
75			clocks = <&rpmcc RPM_SMD_DIV_CLK1>;
76			#clock-cells = <0>;
77			enable-gpios = <&pm8994_gpios 15 0>;
78		};
79	};
80
81	soc {
82		serial@7570000 {
83			label = "BT-UART";
84			status = "okay";
85			pinctrl-names = "default", "sleep";
86			pinctrl-0 = <&blsp1_uart1_default>;
87			pinctrl-1 = <&blsp1_uart1_sleep>;
88
89			bluetooth {
90				compatible = "qcom,qca6174-bt";
91
92				/* bt_disable_n gpio */
93				enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
94
95				clocks = <&divclk4>;
96			};
97		};
98
99		serial@75b0000 {
100			label = "LS-UART1";
101			status = "okay";
102			pinctrl-names = "default", "sleep";
103			pinctrl-0 = <&blsp2_uart1_2pins_default>;
104			pinctrl-1 = <&blsp2_uart1_2pins_sleep>;
105		};
106
107		serial@75b1000 {
108			label = "LS-UART0";
109			status = "disabled";
110			pinctrl-names = "default", "sleep";
111			pinctrl-0 = <&blsp2_uart2_4pins_default>;
112			pinctrl-1 = <&blsp2_uart2_4pins_sleep>;
113		};
114
115		i2c@7577000 {
116		/* On Low speed expansion */
117			label = "LS-I2C0";
118			status = "okay";
119		};
120
121		i2c@75b6000 {
122		/* On Low speed expansion */
123			label = "LS-I2C1";
124			status = "okay";
125		};
126
127		spi@7575000 {
128		/* On Low speed expansion */
129			label = "LS-SPI0";
130			status = "okay";
131		};
132
133		i2c@75b5000 {
134		/* On High speed expansion */
135			label = "HS-I2C2";
136			status = "okay";
137		};
138
139		spi@75ba000{
140		/* On High speed expansion */
141			label = "HS-SPI1";
142			status = "okay";
143		};
144
145		sdhci@74a4900 {
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>;
153			status = "okay";
154		};
155
156		phy@627000 {
157			status = "okay";
158		};
159
160		ufshc@624000 {
161			status = "okay";
162		};
163
164		pinctrl@1010000 {
165			gpio-line-names =
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 */
175				"TP93", /* GPIO_9 */
176				"GPIO-G", /* GPIO_10, MDP_VSYNC_P, LSEC pin 29 */
177				"[MDP_VSYNC_S]", /* GPIO_11, S HSEC pin 55 */
178				"NC", /* GPIO_12 */
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 */
239				"NC", /* GPIO_73 */
240				"NC", /* GPIO_74 */
241				"NC", /* GPIO_75 */
242				"NC", /* GPIO_76 */
243				"TP94", /* GPIO_77 */
244				"NC", /* GPIO_78 */
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 */
258				"NC", /* GPIO_92 */
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 */
263				"NC", /* GPIO_97 */
264				"CAM1_STANDBY_N", /* GPIO_98 */
265				"NC", /* GPIO_99 */
266				"NC", /* GPIO_100 */
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 */
271				"NC", /* GPIO_105 */
272				"NC", /* GPIO_106 */
273				"NC", /* GPIO_107 */
274				"NC", /* GPIO_108 */
275				"NC", /* GPIO_109 */
276				"NC", /* GPIO_110 */
277				"NC", /* GPIO_111 */
278				"NC", /* GPIO_112 */
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 */
286				"NC", /* GPIO_120 */
287				"GPIO121", /* GPIO_121, S HSEC pin 2 */
288				"NC", /* GPIO_122 */
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 */
293				"NC", /* GPIO_127 */
294				"NC", /* GPIO_128 */
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 */
300				"NC", /* GPIO_134 */
301				"NC", /* GPIO_135 */
302				"BOOT_CONFIG8", /* GPIO_136 */
303				"NC", /* GPIO_137 */
304				"NC", /* GPIO_138 */
305				"GPS_SSBI2", /* GPIO_139 */
306				"GPS_SSBI1", /* GPIO_140 */
307				"NC", /* GPIO_141 */
308				"NC", /* GPIO_142 */
309				"NC", /* GPIO_143 */
310				"BOOT_CONFIG6", /* GPIO_144 */
311				"NC", /* GPIO_145 */
312				"NC", /* GPIO_146 */
313				"NC", /* GPIO_147 */
314				"NC", /* GPIO_148 */
315				"NC"; /* GPIO_149 */
316		};
317
318		qcom,spmi@400f000 {
319			pmic@0 {
320				gpios@c000 {
321					gpio-line-names =
322						"NC",
323						"KEY_VOLP_N",
324						"NC",
325						"BL1_PWM",
326						"GPIO-F", /* BL0_PWM, LSEC pin 28 */
327						"BL1_EN",
328						"NC",
329						"WLAN_EN",
330						"NC",
331						"NC",
332						"NC",
333						"NC",
334						"NC",
335						"NC",
336						"DIVCLK1",
337						"DIVCLK2",
338						"DIVCLK3",
339						"DIVCLK4",
340						"BT_EN",
341						"PMIC_SLB",
342						"PMIC_BUA",
343						"USB_VBUS_DET";
344				};
345
346				mpps@a000 {
347					gpio-line-names =
348						"VDDPX_BIAS",
349						"WIFI_LED",
350						"NC",
351						"BT_LED",
352						"PM_MPP05",
353						"PM_MPP06",
354						"PM_MPP07",
355						"NC";
356				};
357			};
358
359			pmic@2 {
360				gpios@c000 {
361					gpio-line-names =
362						"NC",
363						"SPKR_AMP_EN1",
364						"SPKR_AMP_EN2",
365						"TP61",
366						"NC",
367						"USB2_VBUS_DET",
368						"NC",
369						"NC",
370						"NC",
371						"NC";
372				};
373			};
374		};
375
376		phy@34000 {
377			status = "okay";
378		};
379
380		phy@7410000 {
381			status = "okay";
382		};
383
384		phy@7411000 {
385			status = "okay";
386		};
387
388		phy@7412000 {
389			status = "okay";
390		};
391
392		usb@6af8800 {
393			status = "okay";
394			extcon = <&usb3_id>;
395
396			dwc3@6a00000 {
397				extcon = <&usb3_id>;
398				dr_mode = "otg";
399			};
400		};
401
402		usb3_id: usb3-id {
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>;
407		};
408
409		usb@76f8800 {
410			status = "okay";
411			extcon = <&usb2_id>;
412
413			dwc3@7600000 {
414				extcon = <&usb2_id>;
415				dr_mode = "otg";
416				maximum-speed = "high-speed";
417			};
418		};
419
420		usb2_id: usb2-id {
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>;
425		};
426
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>;
434
435			gpio = <&pm8994_gpios 8 0>;
436
437			/* WLAN card specific delay */
438			startup-delay-us = <70000>;
439			enable-active-high;
440		};
441
442		agnoc@0 {
443			pcie@600000 {
444				status = "okay";
445				perst-gpio = <&msmgpio 35 GPIO_ACTIVE_LOW>;
446				vddpe-3v3-supply = <&wlan_en>;
447			};
448
449			pcie@608000 {
450				status = "okay";
451				perst-gpio = <&msmgpio 130 GPIO_ACTIVE_LOW>;
452			};
453
454			pcie@610000 {
455				status = "okay";
456				perst-gpio = <&msmgpio 114 GPIO_ACTIVE_LOW>;
457			};
458		};
459
460		slim_msm: slim@91c0000 {
461			ngd@1 {
462				wcd9335: codec@1{
463					clock-names = "mclk", "slimbus";
464					clocks = <&div1_mclk>,
465						 <&rpmcc RPM_SMD_BB_CLK1>;
466				};
467			};
468		};
469
470		mdss@900000 {
471			status = "okay";
472
473			mdp@901000 {
474				status = "okay";
475			};
476
477			hdmi-phy@9a0600 {
478				status = "okay";
479
480				vddio-supply = <&pm8994_l12>;
481				vcca-supply = <&pm8994_l28>;
482				#phy-cells = <0>;
483			};
484
485			hdmi-tx@9a0000 {
486				status = "okay";
487
488				pinctrl-names = "default", "sleep";
489				pinctrl-0 = <&hdmi_hpd_active &hdmi_ddc_active>;
490				pinctrl-1 = <&hdmi_hpd_suspend &hdmi_ddc_suspend>;
491
492				core-vdda-supply = <&pm8994_l12>;
493				core-vcc-supply = <&pm8994_s4>;
494			};
495		};
496	};
497
498
499	gpio_keys {
500		compatible = "gpio-keys";
501		#address-cells = <1>;
502		#size-cells = <0>;
503		autorepeat;
504
505		pinctrl-names = "default";
506		pinctrl-0 = <&volume_up_gpio>;
507
508		button@0 {
509			label = "Volume Up";
510			linux,code = <KEY_VOLUMEUP>;
511			gpios = <&pm8994_gpios 2 GPIO_ACTIVE_LOW>;
512		};
513	};
514
515	rpm-glink {
516		rpm_requests {
517			pm8994-regulators {
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>;
526
527				s3 {
528					regulator-min-microvolt = <1300000>;
529					regulator-max-microvolt = <1300000>;
530				};
531
532				/**
533				 * 1.8v required on LS expansion
534				 * for mezzanine boards
535				 */
536				s4 {
537					regulator-min-microvolt = <1800000>;
538					regulator-max-microvolt = <1800000>;
539					regulator-always-on;
540				};
541				s5 {
542					regulator-min-microvolt = <2150000>;
543					regulator-max-microvolt = <2150000>;
544				};
545				s7 {
546					regulator-min-microvolt = <800000>;
547					regulator-max-microvolt = <800000>;
548				};
549
550				l1 {
551					regulator-min-microvolt = <1000000>;
552					regulator-max-microvolt = <1000000>;
553				};
554				l2 {
555					regulator-min-microvolt = <1250000>;
556					regulator-max-microvolt = <1250000>;
557				};
558				l3 {
559					regulator-min-microvolt = <850000>;
560					regulator-max-microvolt = <850000>;
561				};
562				l4 {
563					regulator-min-microvolt = <1225000>;
564					regulator-max-microvolt = <1225000>;
565				};
566				l6 {
567					regulator-min-microvolt = <1200000>;
568					regulator-max-microvolt = <1200000>;
569				};
570				l8 {
571					regulator-min-microvolt = <1800000>;
572					regulator-max-microvolt = <1800000>;
573				};
574				l9 {
575					regulator-min-microvolt = <1800000>;
576					regulator-max-microvolt = <1800000>;
577				};
578				l10 {
579					regulator-min-microvolt = <1800000>;
580					regulator-max-microvolt = <1800000>;
581				};
582				l11 {
583					regulator-min-microvolt = <1150000>;
584					regulator-max-microvolt = <1150000>;
585				};
586				l12 {
587					regulator-min-microvolt = <1800000>;
588					regulator-max-microvolt = <1800000>;
589				};
590				l13 {
591					regulator-min-microvolt = <1800000>;
592					regulator-max-microvolt = <2950000>;
593				};
594				l14 {
595					regulator-min-microvolt = <1800000>;
596					regulator-max-microvolt = <1800000>;
597				};
598				l15 {
599					regulator-min-microvolt = <1800000>;
600					regulator-max-microvolt = <1800000>;
601				};
602				l16 {
603					regulator-min-microvolt = <2700000>;
604					regulator-max-microvolt = <2700000>;
605				};
606				l17 {
607					regulator-min-microvolt = <2500000>;
608					regulator-max-microvolt = <2500000>;
609				};
610				l18 {
611					regulator-min-microvolt = <2700000>;
612					regulator-max-microvolt = <2900000>;
613				};
614				l19 {
615					regulator-min-microvolt = <3000000>;
616					regulator-max-microvolt = <3000000>;
617				};
618				l20 {
619					regulator-min-microvolt = <2950000>;
620					regulator-max-microvolt = <2950000>;
621					regulator-allow-set-load;
622				};
623				l21 {
624					regulator-min-microvolt = <2950000>;
625					regulator-max-microvolt = <2950000>;
626				};
627				l22 {
628					regulator-min-microvolt = <3300000>;
629					regulator-max-microvolt = <3300000>;
630				};
631				l23 {
632					regulator-min-microvolt = <2800000>;
633					regulator-max-microvolt = <2800000>;
634				};
635				l24 {
636					regulator-min-microvolt = <3075000>;
637					regulator-max-microvolt = <3075000>;
638				};
639				l25 {
640					regulator-min-microvolt = <1200000>;
641					regulator-max-microvolt = <1200000>;
642					regulator-allow-set-load;
643				};
644				l27 {
645					regulator-min-microvolt = <1000000>;
646					regulator-max-microvolt = <1000000>;
647				};
648				l28 {
649					regulator-min-microvolt = <925000>;
650					regulator-max-microvolt = <925000>;
651					regulator-allow-set-load;
652				};
653				l29 {
654					regulator-min-microvolt = <2800000>;
655					regulator-max-microvolt = <2800000>;
656				};
657				l30 {
658					regulator-min-microvolt = <1800000>;
659					regulator-max-microvolt = <1800000>;
660				};
661				l32 {
662					regulator-min-microvolt = <1800000>;
663					regulator-max-microvolt = <1800000>;
664				};
665			};
666		};
667	};
668};
669
670&spmi_bus {
671	pmic@0 {
672		pon@800 {
673			resin {
674				compatible = "qcom,pm8941-resin";
675				interrupts = <0x0 0x8 1 IRQ_TYPE_EDGE_BOTH>;
676				debounce = <15625>;
677				bias-pull-up;
678				linux,code = <KEY_VOLUMEDOWN>;
679			};
680		};
681	};
682};
683
684&sound {
685	compatible = "qcom,apq8096-sndcard";
686	model = "DB820c";
687	audio-routing =	"RX_BIAS", "MCLK";
688
689	mm1-dai-link {
690		link-name = "MultiMedia1";
691		cpu {
692			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
693		};
694	};
695
696	mm2-dai-link {
697		link-name = "MultiMedia2";
698		cpu {
699			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
700		};
701	};
702
703	mm3-dai-link {
704		link-name = "MultiMedia3";
705		cpu {
706			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
707		};
708	};
709
710	hdmi-dai-link {
711		link-name = "HDMI";
712		cpu {
713			sound-dai = <&q6afedai HDMI_RX>;
714		};
715
716		platform {
717			sound-dai = <&q6routing>;
718		};
719
720		codec {
721			sound-dai = <&hdmi 0>;
722		};
723	};
724
725	slim-dai-link {
726		link-name = "SLIM Playback";
727		cpu {
728			sound-dai = <&q6afedai SLIMBUS_6_RX>;
729		};
730
731		platform {
732			sound-dai = <&q6routing>;
733	};
734
735		codec {
736			sound-dai = <&wcd9335 6>;
737		};
738	};
739
740	slimcap-dai-link {
741		link-name = "SLIM Capture";
742		cpu {
743			sound-dai = <&q6afedai SLIMBUS_0_TX>;
744		};
745
746		platform {
747			sound-dai = <&q6routing>;
748		};
749
750		codec {
751			sound-dai = <&wcd9335 1>;
752		};
753	};
754};
755