2 * Copyright (c) 2015, The Linux Foundation. All rights reserved.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 and
6 * only version 2 as published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
14 #include "msm8916.dtsi"
15 #include "pm8916.dtsi"
16 #include "apq8016-sbc-soc-pins.dtsi"
17 #include "apq8016-sbc-pmic-pins.dtsi"
18 #include <dt-bindings/gpio/gpio.h>
19 #include <dt-bindings/input/input.h>
20 #include <dt-bindings/sound/apq8016-lpass.h>
24 serial0 = &blsp1_uart2;
25 serial1 = &blsp1_uart1;
35 stdout-path = "serial0";
46 pinctrl-names = "default", "sleep";
47 pinctrl-0 = <&blsp1_uart1_default>;
48 pinctrl-1 = <&blsp1_uart1_sleep>;
54 pinctrl-names = "default", "sleep";
55 pinctrl-0 = <&blsp1_uart2_default>;
56 pinctrl-1 = <&blsp1_uart2_sleep>;
60 /* On Low speed expansion */
66 /* On High speed expansion */
70 adv_bridge: bridge@39 {
73 compatible = "adi,adv7533";
76 interrupt-parent = <&msmgpio>;
81 pd-gpios = <&msmgpio 32 0>;
83 avdd-supply = <&pm8916_l6>;
84 v1p2-supply = <&pm8916_l6>;
85 v3p3-supply = <&pm8916_l17>;
87 pinctrl-names = "default","sleep";
88 pinctrl-0 = <&adv7533_int_active &adv7533_switch_active>;
89 pinctrl-1 = <&adv7533_int_suspend &adv7533_switch_suspend>;
90 #sound-dai-cells = <1>;
98 adv7533_in: endpoint {
99 remote-endpoint = <&dsi0_out>;
105 adv7533_out: endpoint {
106 remote-endpoint = <&hdmi_con>;
114 /* On Low speed expansion */
120 /* On High speed expansion */
126 /* On Low speed expansion */
132 pinctrl-names = "default";
133 pinctrl-0 = <&msmgpio_leds>,
134 <&pm8916_gpios_leds>,
137 compatible = "gpio-leds";
140 label = "apq8016-sbc:green:user1";
141 gpios = <&msmgpio 21 GPIO_ACTIVE_HIGH>;
142 linux,default-trigger = "heartbeat";
143 default-state = "off";
147 label = "apq8016-sbc:green:user2";
148 gpios = <&msmgpio 120 GPIO_ACTIVE_HIGH>;
149 linux,default-trigger = "mmc0";
150 default-state = "off";
154 label = "apq8016-sbc:green:user3";
155 gpios = <&pm8916_gpios 1 GPIO_ACTIVE_HIGH>;
156 linux,default-trigger = "mmc1";
157 default-state = "off";
161 label = "apq8016-sbc:green:user4";
162 gpios = <&pm8916_gpios 2 GPIO_ACTIVE_HIGH>;
163 linux,default-trigger = "none";
164 default-state = "off";
168 label = "apq8016-sbc:yellow:wlan";
169 gpios = <&pm8916_mpps 2 GPIO_ACTIVE_HIGH>;
170 linux,default-trigger = "wlan";
171 default-state = "off";
175 label = "apq8016-sbc:blue:bt";
176 gpios = <&pm8916_mpps 3 GPIO_ACTIVE_HIGH>;
177 linux,default-trigger = "bt";
178 default-state = "off";
183 vmmc-supply = <&pm8916_l8>;
184 vqmmc-supply = <&pm8916_l5>;
186 pinctrl-names = "default", "sleep";
187 pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on>;
188 pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off>;
193 vmmc-supply = <&pm8916_l11>;
194 vqmmc-supply = <&pm8916_l12>;
196 pinctrl-names = "default", "sleep";
197 pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
198 pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
200 cd-gpios = <&msmgpio 38 0x1>;
205 extcon = <&usb_id>, <&usb_id>;
214 v1p8-supply = <&pm8916_l7>;
215 v3p3-supply = <&pm8916_l13>;
216 vddcx-supply = <&pm8916_s1>;
217 extcon = <&usb_id>, <&usb_id>;
220 switch-gpio = <&pm8916_gpios 4 GPIO_ACTIVE_HIGH>;
221 pinctrl-names = "default";
222 pinctrl-0 = <&usb_sw_sel_pm>;
239 vdda-supply = <&pm8916_l2>;
240 vddio-supply = <&pm8916_l6>;
245 remote-endpoint = <&adv7533_in>;
246 data-lanes = <0 1 2 3>;
255 vddio-supply = <&pm8916_l6>;
265 playback - Primary MI2S
269 playback - secondary MI2S
279 compatible = "qcom,apq8016-sbc-sndcard";
280 reg = <0x07702000 0x4>, <0x07702004 0x4>;
281 reg-names = "mic-iomux", "spkr-iomux";
284 pinctrl-0 = <&cdc_pdm_lines_act &ext_sec_tlmm_lines_act &ext_mclk_tlmm_lines_act>;
285 pinctrl-1 = <&cdc_pdm_lines_sus &ext_sec_tlmm_lines_sus &ext_mclk_tlmm_lines_sus>;
286 pinctrl-names = "default", "sleep";
287 qcom,model = "DB410c";
289 "AMIC2", "MIC BIAS Internal2",
290 "AMIC3", "MIC BIAS External1";
291 external-dai-link@0 {
292 link-name = "ADV7533";
294 sound-dai = <&lpass MI2S_QUATERNARY>;
297 sound-dai = <&adv_bridge 0>;
301 internal-codec-playback-dai-link@0 { /* I2S - Internal codec */
304 sound-dai = <&lpass MI2S_PRIMARY>;
307 sound-dai = <&lpass_codec 0>, <&wcd_codec 0>;
311 internal-codec-capture-dai-link@0 { /* I2S - Internal codec */
312 link-name = "WCD-Capture";
314 sound-dai = <&lpass MI2S_TERTIARY>;
317 sound-dai = <&lpass_codec 1>, <&wcd_codec 1>;
328 compatible = "smsc,usb3503";
329 reset-gpios = <&pm8916_gpios 3 GPIO_ACTIVE_LOW>;
334 compatible = "linux,extcon-usb-gpio";
335 id-gpio = <&msmgpio 121 GPIO_ACTIVE_HIGH>;
336 pinctrl-names = "default";
337 pinctrl-0 = <&usb_id_default>;
341 compatible = "hdmi-connector";
346 remote-endpoint = <&adv7533_out>;
352 compatible = "gpio-keys";
353 #address-cells = <1>;
357 pinctrl-names = "default";
358 pinctrl-0 = <&msm_key_volp_n_default>;
362 linux,code = <KEY_VOLUMEUP>;
363 gpios = <&msmgpio 107 GPIO_ACTIVE_LOW>;
370 clocks = <&gcc GCC_CODEC_DIGCODEC_CLK>;
371 clock-names = "mclk";
374 &smd_rpm_regulators {
375 vdd_l1_l2_l3-supply = <&pm8916_s3>;
376 vdd_l5-supply = <&pm8916_s3>;
377 vdd_l4_l5_l6-supply = <&pm8916_s4>;
378 vdd_l7-supply = <&pm8916_s4>;
381 regulator-min-microvolt = <375000>;
382 regulator-max-microvolt = <1562000>;
386 regulator-min-microvolt = <375000>;
387 regulator-max-microvolt = <1562000>;
391 regulator-min-microvolt = <1800000>;
392 regulator-max-microvolt = <1800000>;
399 regulator-min-microvolt = <375000>;
400 regulator-max-microvolt = <1525000>;
404 regulator-min-microvolt = <1200000>;
405 regulator-max-microvolt = <1200000>;
409 regulator-min-microvolt = <375000>;
410 regulator-max-microvolt = <1525000>;
414 regulator-min-microvolt = <1750000>;
415 regulator-max-microvolt = <3337000>;
419 regulator-min-microvolt = <1750000>;
420 regulator-max-microvolt = <3337000>;
424 regulator-min-microvolt = <1800000>;
425 regulator-max-microvolt = <1800000>;
429 regulator-min-microvolt = <1750000>;
430 regulator-max-microvolt = <3337000>;
434 regulator-min-microvolt = <1750000>;
435 regulator-max-microvolt = <3337000>;
439 regulator-min-microvolt = <1750000>;
440 regulator-max-microvolt = <3337000>;
444 regulator-min-microvolt = <1750000>;
445 regulator-max-microvolt = <3337000>;
449 regulator-min-microvolt = <1750000>;
450 regulator-max-microvolt = <3337000>;
454 regulator-min-microvolt = <1750000>;
455 regulator-max-microvolt = <3337000>;
459 regulator-min-microvolt = <1750000>;
460 regulator-max-microvolt = <3337000>;
464 regulator-min-microvolt = <1750000>;
465 regulator-max-microvolt = <3337000>;
469 * 1.8v required on LS expansion
470 * for mezzanine boards
473 regulator-min-microvolt = <1750000>;
474 regulator-max-microvolt = <3337000>;
479 regulator-min-microvolt = <1750000>;
480 regulator-max-microvolt = <3337000>;
484 regulator-min-microvolt = <3300000>;
485 regulator-max-microvolt = <3300000>;
489 regulator-min-microvolt = <1750000>;
490 regulator-max-microvolt = <3337000>;