Skip to content
Open
17 changes: 10 additions & 7 deletions arch/arm/boot/dts/qcom/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -211,9 +211,11 @@ dtb-$(CONFIG_ARCH_MSM8940) += msm8940-pmi8937-cdp.dtb \
msm8940-pmi8940-qrd-sku7.dtb

ifeq ($(CONFIG_MACH_XIAOMI_MSM8953),y)
dtb-$(CONFIG_MACH_XIAOMI_MIDO) += msm8953-qrd-sku3.dtb
dtb-$(CONFIG_MACH_XIAOMI_MIDO) += \
mido-msm8953-qrd-sku3.dtb
else
dtb-$(CONFIG_ARCH_MSM8953) += msm8953-sim.dtb \
dtb-$(CONFIG_ARCH_MSM8953) += \
msm8953-sim.dtb \
msm8953-rumi.dtb \
msm8953-cdp.dtb \
msm8953-mtp.dtb \
Expand All @@ -227,6 +229,12 @@ dtb-$(CONFIG_ARCH_MSM8953) += msm8953-sim.dtb \
msm8953-cdp-1200p.dtb \
msm8953-iot-mtp.dtb \
apq8053-iot-mtp.dtb

dtb-$(CONFIG_ARCH_MSM8916) += \
msm8952-qrd-skum.dtb \
msm8952-cdp.dtb \
msm8952-ext-codec-cdp.dtb \
msm8952-mtp.dtb
endif

dtb-$(CONFIG_ARCH_MDM9607) += mdm9607-rumi.dtb \
Expand All @@ -235,11 +243,6 @@ dtb-$(CONFIG_ARCH_MDM9607) += mdm9607-rumi.dtb \
mdm9607-rcm.dtb \
mdm9607-mtp-sdcard.dtb

dtb-$(CONFIG_ARCH_MSM8916) += msm8952-qrd-skum.dtb \
msm8952-cdp.dtb \
msm8952-ext-codec-cdp.dtb \
msm8952-mtp.dtb

dtb-$(CONFIG_ARCH_MSM8909) += msm8909-pm8916-mtp.dtb \
msm8909w-wtp.dtb \
apq8009w-wtp.dtb \
Expand Down
25 changes: 25 additions & 0 deletions arch/arm/boot/dts/qcom/mido-msm8953-qrd-sku3.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
/*
* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/

/dts-v1/;

#include "mido/platform/msm8953/msm8953.dtsi"
#include "mido/platform/msm8953/msm8953-qrd-sku3.dtsi"

/ {
model = "Qualcomm Technologies, Inc. MSM8953 QRD SKU3";
compatible = "qcom,msm8953-qrd-sku3",
"qcom,msm8953-qrd", "qcom,msm8953", "qcom,qrd";
qcom,board-id= <0x0b 0>;
};

275 changes: 275 additions & 0 deletions arch/arm/boot/dts/qcom/mido/platform/msm8953/msm8953-audio.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,275 @@
/*
* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/

#include "../../../msm8953-wsa881x.dtsi"

&int_codec {
qcom,model = "msm8953-snd-card-mtp";
qcom,msm-ext-pa = "primary";
qcom,msm-spk-ext-pa = <&tlmm 96 0>;
qcom,cdc-us-euro-gpios = <&tlmm 63 0>;
qcom,msm-mbhc-hphl-swh = <0>;
qcom,msm-mbhc-gnd-swh = <0>;
qcom,msm-hs-micbias-type = "internal";
qcom,msm-micbias1-ext-cap;
qcom,msm-mclk-freq = <9600000>;
qcom,audio-routing =
"RX_BIAS", "MCLK",
"SPK_RX_BIAS", "MCLK",
"INT_LDO_H", "MCLK",
"MIC BIAS External", "Handset Mic",
"MIC BIAS Internal2", "Headset Mic",
"MIC BIAS Internal1", "Secondary Mic",
"AMIC1", "MIC BIAS External",
"AMIC2", "MIC BIAS Internal2",
"AMIC3", "MIC BIAS Internal1";

qcom,msm-gpios =
"pri_i2s",
"us_eu_gpio",
"quin_i2s",
"comp_gpio";
qcom,pinctrl-names =
"all_off",
"pri_i2s_act",
"us_eu_gpio_act",
"pri_i2s_us_eu_gpio_act",
"quin_act",
"quin_pri_i2s_act",
"quin_us_eu_gpio_act",
"quin_us_eu_gpio_pri_i2s_act",
"comp_gpio_act",
"comp_gpio_pri_i2s_act",
"comp_gpio_us_eu_gpio_act",
"comp_gpio_pri_i2s_us_eu_gpio_act",
"comp_gpio_quin_act",
"comp_gpio_quin_pri_i2s_act",
"comp_gpio_quin_us_eu_gpio_act",
"comp_gpio_quin_us_eu_gpio_pri_i2s_act";

pinctrl-names =
"all_off",
"pri_i2s_act",
"us_eu_gpio_act",
"pri_i2s_us_eu_gpio_act",
"quin_act",
"quin_pri_i2s_act",
"quin_us_eu_gpio_act",
"quin_us_eu_gpio_pri_i2s_act",
"comp_gpio_act",
"comp_gpio_pri_i2s_act",
"comp_gpio_us_eu_gpio_act",
"comp_gpio_pri_i2s_us_eu_gpio_act",
"comp_gpio_quin_act",
"comp_gpio_quin_pri_i2s_act",
"comp_gpio_quin_us_eu_gpio_act",
"comp_gpio_quin_us_eu_gpio_pri_i2s_act";

pinctrl-0 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_sus &cross_conn_det_sus
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-1 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_act &cross_conn_det_sus
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-2 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_sus &cross_conn_det_act
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-3 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_act &cross_conn_det_act
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-4 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_sus &cross_conn_det_sus
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-5 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_act &cross_conn_det_sus
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-6 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_sus &cross_conn_det_act
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-7 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_sus
&cdc_pdm_lines_2_act &cross_conn_det_act
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-8 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_sus &cross_conn_det_sus
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-9 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_act &cross_conn_det_sus
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-10 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_sus &cross_conn_det_act
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-11 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_act &cross_conn_det_act
&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
pinctrl-12 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_sus &cross_conn_det_sus
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-13 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_act &cross_conn_det_sus
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-14 = <&cdc_pdm_lines_sus &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_sus &cross_conn_det_act
&pri_tlmm_lines_act &pri_tlmm_ws_act>;
pinctrl-15 = <&cdc_pdm_lines_act &cdc_pdm_comp_lines_act
&cdc_pdm_lines_2_act &cross_conn_det_act
&pri_tlmm_lines_act &pri_tlmm_ws_act>;

asoc-codec = <&stub_codec>, <&pm8953_diangu_dig>, <&hdmi_dba>;
asoc-codec-names = "msm-stub-codec.1", "cajon_codec",
"msm-hdmi-dba-codec-rx";
};

&pm8953_gpios {
gpio@c000 {
status = "ok";
qcom,mode = <1>;
qcom,pull = <5>;
qcom,vin-sel = <0>;
qcom,src-sel = <2>;
qcom,master-en = <1>;
qcom,out-strength = <2>;
};
};

&ext_codec {
qcom,model = "msm8953-tasha-snd-card";

qcom,cdc-us-euro-gpios = <&tlmm 63 0>;
qcom,msm-mbhc-hphl-swh = <0>;
qcom,msm-mbhc-gnd-swh = <0>;

qcom,wsa-max-devs = <2>;
qcom,wsa-devs = <&wsa881x_211>, <&wsa881x_212>,
<&wsa881x_213>, <&wsa881x_214>;
qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight",
"SpkrLeft", "SpkrRight";
};

&wcd9xxx_intc {
interrupt-parent = <&tlmm>;
interrupts = <73 0>;
qcom,gpio-connect = <&tlmm 73 0>;
};

&clock_audio {
qcom,audio-ref-clk-gpio = <&pm8953_gpios 1 0>;
qcom,lpass-mclk-id = "pri_mclk";
clocks = <&clock_gcc clk_div_clk2>;
pinctrl-names = "sleep", "active";
pinctrl-0 = <&cdc_mclk2_sleep>;
pinctrl-1 = <&cdc_mclk2_active>;
};

&pm8953_1 {
pm8953_diangu_dig: 8953_wcd_codec@f000 {
compatible = "qcom,msm8x16_wcd_codec";
reg = <0xf000 0x100>;
interrupt-parent = <&spmi_bus>;
interrupts = <0x1 0xf0 0x0>,
<0x1 0xf0 0x1>,
<0x1 0xf0 0x2>,
<0x1 0xf0 0x3>,
<0x1 0xf0 0x4>,
<0x1 0xf0 0x5>,
<0x1 0xf0 0x6>,
<0x1 0xf0 0x7>;
interrupt-names = "spk_cnp_int",
"spk_clip_int",
"spk_ocp_int",
"ins_rem_det1",
"but_rel_det",
"but_press_det",
"ins_rem_det",
"mbhc_int";

cdc-vdda-cp-supply = <&pm8953_s4>;
qcom,cdc-vdda-cp-voltage = <1900000 2050000>;
qcom,cdc-vdda-cp-current = <500000>;

cdc-vdd-io-supply = <&pm8953_l5>;
qcom,cdc-vdd-io-voltage = <1800000 1800000>;
qcom,cdc-vdd-io-current = <5000>;

cdc-vdd-pa-supply = <&pm8953_s4>;
qcom,cdc-vdd-pa-voltage = <1900000 2050000>;
qcom,cdc-vdd-pa-current = <260000>;

cdc-vdd-mic-bias-supply = <&pm8953_l13>;
qcom,cdc-vdd-mic-bias-voltage = <3125000 3125000>;
qcom,cdc-vdd-mic-bias-current = <5000>;

qcom,cdc-mclk-clk-rate = <9600000>;

qcom,cdc-static-supplies = "cdc-vdd-io",
"cdc-vdd-pa",
"cdc-vdda-cp";

qcom,cdc-on-demand-supplies = "cdc-vdd-mic-bias";
qcom,dig-cdc-base-addr = <0xc0f0000>;
};

pm8953_diangu_analog: 8953_wcd_codec@f100 {
compatible = "qcom,msm8x16_wcd_codec";
reg = <0xf100 0x100>;
interrupt-parent = <&spmi_bus>;
interrupts = <0x1 0xf1 0x0>,
<0x1 0xf1 0x1>,
<0x1 0xf1 0x2>,
<0x1 0xf1 0x3>,
<0x1 0xf1 0x4>,
<0x1 0xf1 0x5>;
interrupt-names = "ear_ocp_int",
"hphr_ocp_int",
"hphl_ocp_det",
"ear_cnp_int",
"hphr_cnp_int",
"hphl_cnp_int";
qcom,dig-cdc-base-addr = <0xc0f0000>;
};
};

&wcd_rst_gpio {
qcom,cdc-rst-n-gpio = <&tlmm 67 0>;
};

&wcd9335 {
clock-names = "wcd_clk", "wcd_native_clk";
clocks = <&clock_audio clk_audio_pmi_clk>,
<&clock_audio clk_audio_ap_clk2>;

qcom,cdc-reset-gpio = <&tlmm 67 0>;

cdc-vdd-buck-supply = <&eldo2_8953>;
qcom,cdc-vdd-buck-voltage = <1800000 1800000>;
qcom,cdc-vdd-buck-current = <650000>;

cdc-buck-sido-supply = <&eldo2_8953>;
qcom,cdc-buck-sido-voltage = <1800000 1800000>;
qcom,cdc-buck-sido-current = <150000>;

cdc-vdd-tx-h-supply = <&eldo2_8953>;
qcom,cdc-vdd-tx-h-voltage = <1800000 1800000>;
qcom,cdc-vdd-tx-h-current = <25000>;

cdc-vdd-rx-h-supply = <&eldo2_8953>;
qcom,cdc-vdd-rx-h-voltage = <1800000 1800000>;
qcom,cdc-vdd-rx-h-current = <25000>;

cdc-vdd-px-supply = <&eldo2_8953>;
qcom,cdc-vdd-px-voltage = <1800000 1800000>;
qcom,cdc-vdd-px-current = <10000>;

cdc-vdd-mic-bias-supply = <&pm8953_l13>;
qcom,cdc-vdd-mic-bias-voltage = <3125000 3125000>;
qcom,cdc-vdd-mic-bias-current = <15000>;
};
Loading