400 lines
12 KiB
Plaintext
400 lines
12 KiB
Plaintext
/*
|
|
* Copyright (c) 2015, 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 "msm8952-cdp.dtsi"
|
|
#include "msm8952-wsa881x.dtsi"
|
|
|
|
/ {
|
|
model = "Qualcomm Technologies, Inc. MSM 8952 External Audio Codec CDP";
|
|
compatible = "qcom,msm8952-cdp", "qcom,msm8952", "qcom,cdp";
|
|
qcom,board-id= <1 1>;
|
|
};
|
|
|
|
&int_codec {
|
|
status = "disabled";
|
|
};
|
|
|
|
&pm8950_cajon_dig {
|
|
status = "disabled";
|
|
};
|
|
|
|
&pm8950_cajon_analog {
|
|
status = "disabled";
|
|
};
|
|
|
|
&wsa881x_i2c_e {
|
|
status = "disabled";
|
|
};
|
|
|
|
&wsa881x_i2c_44 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&wsa881x_i2c_f {
|
|
status = "disabled";
|
|
};
|
|
|
|
&wsa881x_i2c_45 {
|
|
status = "disabled";
|
|
};
|
|
|
|
&soc {
|
|
wcd9xxx_intc: wcd9xxx-irq {
|
|
compatible = "qcom,wcd9xxx-irq";
|
|
interrupt-controller;
|
|
#interrupt-cells = <1>;
|
|
interrupt-parent = <&msm_gpio>;
|
|
interrupts = <73 0>;
|
|
interrupt-names = "cdc-int";
|
|
qcom,gpio-connect = <&msm_gpio 73 0>;
|
|
};
|
|
|
|
ext_codec: sound-9335 {
|
|
compatible = "qcom,msm8952-audio-slim-codec";
|
|
qcom,model = "msm8952-tasha-snd-card";
|
|
|
|
reg = <0xc051000 0x4>,
|
|
<0xc051004 0x4>,
|
|
<0xc055000 0x4>,
|
|
<0xc052000 0x4>;
|
|
|
|
reg-names = "csr_gp_io_mux_mic_ctl",
|
|
"csr_gp_io_mux_spkr_ctl",
|
|
"csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel",
|
|
"csr_gp_io_mux_quin_ctl";
|
|
|
|
qcom,audio-routing =
|
|
"AIF4 VI", "MCLK",
|
|
"RX_BIAS", "MCLK",
|
|
"AMIC2", "MIC BIAS2",
|
|
"MIC BIAS2", "Headset Mic",
|
|
"AMIC3", "MIC BIAS2",
|
|
"MIC BIAS2", "ANCRight Headset Mic",
|
|
"AMIC4", "MIC BIAS2",
|
|
"MIC BIAS2", "ANCLeft Headset Mic",
|
|
"AMIC5", "MIC BIAS3",
|
|
"MIC BIAS3", "Handset Mic",
|
|
"AMIC6", "MIC BIAS4",
|
|
"MIC BIAS4", "Analog Mic6",
|
|
"DMIC0", "MIC BIAS1",
|
|
"MIC BIAS1", "Digital Mic0",
|
|
"DMIC1", "MIC BIAS1",
|
|
"MIC BIAS1", "Digital Mic1",
|
|
"DMIC2", "MIC BIAS3",
|
|
"MIC BIAS3", "Digital Mic2",
|
|
"DMIC3", "MIC BIAS3",
|
|
"MIC BIAS3", "Digital Mic3",
|
|
"DMIC4", "MIC BIAS4",
|
|
"MIC BIAS4", "Digital Mic4",
|
|
"DMIC5", "MIC BIAS4",
|
|
"MIC BIAS4", "Digital Mic5",
|
|
"SpkrLeft IN", "SPK1 OUT",
|
|
"SpkrRight IN", "SPK2 OUT";
|
|
|
|
qcom,msm-gpios =
|
|
"us_eu_gpio";
|
|
qcom,pinctrl-names =
|
|
"all_off",
|
|
"us_eu_gpio_act";
|
|
pinctrl-names =
|
|
"all_off",
|
|
"us_eu_gpio_act";
|
|
pinctrl-0 = <&cross_conn_det_sus>;
|
|
pinctrl-1 = <&cross_conn_det_act>;
|
|
qcom,cdc-us-euro-gpios = <&msm_gpio 63 0>;
|
|
|
|
qcom,msm-mbhc-hphl-swh = <0>;
|
|
qcom,msm-mbhc-gnd-swh = <0>;
|
|
qcom,tasha-mclk-clk-freq = <9600000>;
|
|
asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>,
|
|
<&loopback>, <&compress>, <&hostless>,
|
|
<&afe>, <&lsm>, <&routing>, <&cpe>, <&lpa>;
|
|
asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
|
|
"msm-pcm-dsp.2", "msm-voip-dsp",
|
|
"msm-pcm-voice", "msm-pcm-loopback",
|
|
"msm-compress-dsp", "msm-pcm-hostless",
|
|
"msm-pcm-afe", "msm-lsm-client",
|
|
"msm-pcm-routing", "msm-cpe-lsm",
|
|
"msm-pcm-lpa";
|
|
asoc-cpu = <&dai_pri_auxpcm>, <&dai_hdmi>,
|
|
<&dai_mi2s2>, <&dai_mi2s3>, <&dai_mi2s5>,
|
|
<&sb_0_rx>, <&sb_0_tx>, <&sb_1_rx>, <&sb_1_tx>,
|
|
<&sb_2_rx>, <&sb_2_tx>, <&sb_3_rx>, <&sb_3_tx>,
|
|
<&sb_4_rx>, <&sb_4_tx>, <&sb_5_tx>,
|
|
<&afe_pcm_rx>, <&afe_pcm_tx>,
|
|
<&afe_proxy_rx>, <&afe_proxy_tx>,
|
|
<&incall_record_rx>, <&incall_record_tx>,
|
|
<&incall_music_rx>, <&incall_music_2_rx>,
|
|
<&sb_5_rx>, <&bt_sco_rx>,
|
|
<&bt_sco_tx>, <&int_fm_rx>, <&int_fm_tx>;
|
|
asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-hdmi.8",
|
|
"msm-dai-q6-mi2s.2",
|
|
"msm-dai-q6-mi2s.3", "msm-dai-q6-mi2s.5",
|
|
"msm-dai-q6-dev.16384", "msm-dai-q6-dev.16385",
|
|
"msm-dai-q6-dev.16386", "msm-dai-q6-dev.16387",
|
|
"msm-dai-q6-dev.16388", "msm-dai-q6-dev.16389",
|
|
"msm-dai-q6-dev.16390", "msm-dai-q6-dev.16391",
|
|
"msm-dai-q6-dev.16392", "msm-dai-q6-dev.16393",
|
|
"msm-dai-q6-dev.16395", "msm-dai-q6-dev.224",
|
|
"msm-dai-q6-dev.225", "msm-dai-q6-dev.241",
|
|
"msm-dai-q6-dev.240", "msm-dai-q6-dev.32771",
|
|
"msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773",
|
|
"msm-dai-q6-dev.32770", "msm-dai-q6-dev.16394",
|
|
"msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289",
|
|
"msm-dai-q6-dev.12292", "msm-dai-q6-dev.12293";
|
|
asoc-codec = <&stub_codec>;
|
|
asoc-codec-names = "msm-stub-codec.1";
|
|
qcom,wsa-max-devs = <2>;
|
|
qcom,wsa-devs = <&wsa881x_211>, <&wsa881x_212>,
|
|
<&wsa881x_213>, <&wsa881x_214>;
|
|
qcom,wsa-aux-dev-prefix = "SpkrRight", "SpkrLeft",
|
|
"SpkrRight", "SpkrLeft";
|
|
};
|
|
|
|
sound-9330 {
|
|
compatible = "qcom,msm8952-audio-slim-codec";
|
|
qcom,model = "msm8952-tomtom-snd-card";
|
|
qcom,cdc-mclk-gpios = <&pm8950_gpios 1 0>;
|
|
clock-names = "osr_clk";
|
|
clocks = <&clock_gcc clk_div_clk2>;
|
|
|
|
reg = <0xc051000 0x4>,
|
|
<0xc051004 0x4>,
|
|
<0xc055000 0x4>;
|
|
reg-names = "csr_gp_io_mux_mic_ctl",
|
|
"csr_gp_io_mux_spkr_ctl",
|
|
"csr_gp_io_lpaif_pri_pcm_pri_mode_muxsel";
|
|
qcom,msm-gpios =
|
|
"us_eu_gpio";
|
|
qcom,pinctrl-names =
|
|
"all_off",
|
|
"us_eu_gpio_act";
|
|
pinctrl-names =
|
|
"all_off",
|
|
"us_eu_gpio_act";
|
|
pinctrl-0 = <&cross_conn_det_sus>;
|
|
pinctrl-1 = <&cross_conn_det_act>;
|
|
qcom,cdc-us-euro-gpios = <&msm_gpio 63 0>;
|
|
qcom,headset-jack-type-NC;
|
|
qcom,audio-routing =
|
|
"RX_BIAS", "MCLK",
|
|
"LDO_H", "MCLK",
|
|
"SPK_OUT", "MCLK",
|
|
"AIF4 MAD", "MCLK",
|
|
"AMIC1", "MIC BIAS1 Internal1",
|
|
"MIC BIAS1 Internal1", "Handset Mic",
|
|
"AMIC2", "MIC BIAS2 External",
|
|
"MIC BIAS2 External", "Headset Mic",
|
|
"AMIC3", "MIC BIAS2 External",
|
|
"MIC BIAS2 External", "ANCRight Headset Mic",
|
|
"AMIC4", "MIC BIAS2 External",
|
|
"MIC BIAS2 External", "ANCLeft Headset Mic",
|
|
"AMIC5", "MIC BIAS3 External",
|
|
"MIC BIAS3 External", "Handset Mic",
|
|
"AMIC6", "MIC BIAS4 External",
|
|
"MIC BIAS4 External", "Handset Mic",
|
|
"DMIC1", "MIC BIAS1 External",
|
|
"MIC BIAS1 External", "Digital Mic1",
|
|
"DMIC2", "MIC BIAS1 External",
|
|
"MIC BIAS1 External", "Digital Mic2",
|
|
"DMIC3", "MIC BIAS3 External",
|
|
"MIC BIAS3 External", "Digital Mic3",
|
|
"DMIC4", "MIC BIAS3 External",
|
|
"MIC BIAS3 External", "Digital Mic4",
|
|
"DMIC5", "MIC BIAS4 External",
|
|
"MIC BIAS4 External", "Digital Mic5",
|
|
"DMIC6", "MIC BIAS4 External",
|
|
"MIC BIAS4 External", "Digital Mic6";
|
|
asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>,
|
|
<&loopback>, <&compress>, <&hostless>,
|
|
<&afe>, <&lsm>, <&routing>, <&lpa>, <&cpe>;
|
|
asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1", "msm-pcm-dsp.2",
|
|
"msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback",
|
|
"msm-compress-dsp", "msm-pcm-hostless", "msm-pcm-afe",
|
|
"msm-lsm-client", "msm-pcm-routing", "msm-pcm-lpa",
|
|
"msm-cpe-lsm";
|
|
asoc-cpu = <&dai_hdmi>, <&dai_mi2s0>, <&dai_mi2s1>,
|
|
<&dai_mi2s2>, <&dai_mi2s3>, <&sb_0_rx>, <&sb_0_tx>,
|
|
<&sb_1_rx>, <&sb_1_tx>, <&sb_3_rx>, <&sb_3_tx>,
|
|
<&sb_4_rx>, <&sb_4_tx>, <&sb_5_tx>, <&bt_sco_rx>,
|
|
<&bt_sco_tx>, <&int_fm_rx>, <&int_fm_tx>, <&afe_pcm_rx>,
|
|
<&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>,
|
|
<&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>,
|
|
<&incall_music_2_rx>;
|
|
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-mi2s.0",
|
|
"msm-dai-q6-mi2s.1", "msm-dai-q6-mi2s.2",
|
|
"msm-dai-q6-mi2s.3", "msm-dai-q6-dev.16384",
|
|
"msm-dai-q6-dev.16385", "msm-dai-q6-dev.16386",
|
|
"msm-dai-q6-dev.16387", "msm-dai-q6-dev.16390",
|
|
"msm-dai-q6-dev.16391", "msm-dai-q6-dev.16392",
|
|
"msm-dai-q6-dev.16393", "msm-dai-q6-dev.16395",
|
|
"msm-dai-q6-dev.12288", "msm-dai-q6-dev.12289",
|
|
"msm-dai-q6-dev.12292", "msm-dai-q6-dev.12293",
|
|
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
|
|
"msm-dai-q6-dev.241", "msm-dai-q6-dev.240",
|
|
"msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772",
|
|
"msm-dai-q6-dev.32773", "msm-dai-q6-dev.32770";
|
|
asoc-codec = <&stub_codec>;
|
|
asoc-codec-names = "msm-stub-codec.1";
|
|
};
|
|
|
|
cpe: qcom,msm-cpe-lsm {
|
|
compatible = "qcom,msm-cpe-lsm";
|
|
};
|
|
|
|
clock_audio: audio_ext_clk {
|
|
compatible = "qcom,audio-ref-clk";
|
|
qcom,audio-ref-clk-gpio = <&pm8950_gpios 1 0>;
|
|
clock-names = "osr_clk";
|
|
clocks = <&clock_gcc clk_div_clk2>;
|
|
qcom,node_has_rpm_clock;
|
|
#clock-cells = <1>;
|
|
};
|
|
};
|
|
|
|
&pm8950_gpios {
|
|
gpio@c000 {
|
|
qcom,vin-sel = <0>;
|
|
};
|
|
};
|
|
|
|
&slim_msm {
|
|
status = "ok";
|
|
msm_dai_slim {
|
|
compatible = "qcom,msm-dai-slim";
|
|
elemental-addr = [ff ff ff fe 17 02];
|
|
};
|
|
|
|
tomtom_codec {
|
|
compatible = "qcom,tomtom-slim-pgd";
|
|
elemental-addr = [00 01 30 01 17 02];
|
|
|
|
interrupt-parent = <&wcd9xxx_intc>;
|
|
interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
|
17 18 19 20 21 22 23 24 25 26 27 28 29
|
|
30 31>;
|
|
|
|
qcom,cdc-reset-gpio = <&msm_gpio 68 0>;
|
|
|
|
clock-names = "wcd_clk";
|
|
clocks = <&clock_audio clk_audio_pmi_clk>;
|
|
|
|
qcom,cdc-micbias1-ext-cap;
|
|
qcom,cdc-micbias2-ext-cap;
|
|
|
|
cdc-vdd-buck-supply = <&eldo2_8952>;
|
|
qcom,cdc-vdd-buck-voltage = <1800000 2150000>;
|
|
qcom,cdc-vdd-buck-current = <650000>;
|
|
|
|
cdc-vdd-tx-h-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-tx-h-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-tx-h-current = <45000>;
|
|
|
|
cdc-vdd-rx-h-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-rx-h-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-rx-h-current = <45000>;
|
|
|
|
cdc-vdd-px-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-px-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-px-current = <45000>;
|
|
|
|
cdc-vddcx-1-supply = <&pm8950_l2>;
|
|
qcom,cdc-vddcx-1-voltage = <1200000 1200000>;
|
|
qcom,cdc-vddcx-1-current = <33000>;
|
|
|
|
cdc-vddcx-2-supply = <&pm8950_s3>;
|
|
qcom,cdc-vddcx-2-voltage = <1300000 1300000>;
|
|
qcom,cdc-vddcx-2-current = <20000>;
|
|
|
|
qcom,cdc-static-supplies = "cdc-vdd-buck",
|
|
"cdc-vdd-tx-h",
|
|
"cdc-vdd-rx-h",
|
|
"cdc-vdd-px",
|
|
"cdc-vddcx-1",
|
|
"cdc-vddcx-2";
|
|
|
|
qcom,cdc-cp-supplies = "cdc-vdd-buck";
|
|
qcom,cdc-micbias-ldoh-v = <0x3>;
|
|
qcom,cdc-micbias-cfilt1-mv = <1800>;
|
|
qcom,cdc-micbias-cfilt2-mv = <2700>;
|
|
qcom,cdc-micbias-cfilt3-mv = <1800>;
|
|
qcom,cdc-micbias1-cfilt-sel = <0x0>;
|
|
qcom,cdc-micbias2-cfilt-sel = <0x1>;
|
|
qcom,cdc-micbias3-cfilt-sel = <0x2>;
|
|
qcom,cdc-micbias4-cfilt-sel = <0x2>;
|
|
qcom,cdc-mclk-clk-rate = <9600000>;
|
|
qcom,cdc-slim-ifd = "tomtom-slim-ifd";
|
|
qcom,cdc-slim-ifd-elemental-addr = [00 00 30 01 17 02];
|
|
qcom,cdc-dmic-sample-rate = <4800000>;
|
|
qcom,cdc-variant = "WCD9330";
|
|
};
|
|
|
|
tasha_codec {
|
|
compatible = "qcom,tasha-slim-pgd";
|
|
elemental-addr = [00 01 A0 01 17 02];
|
|
|
|
interrupt-parent = <&wcd9xxx_intc>;
|
|
interrupts = <0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
|
17 18 19 20 21 22 23 24 25 26 27 28 29
|
|
30>;
|
|
|
|
qcom,cdc-reset-gpio = <&msm_gpio 68 0>;
|
|
|
|
cdc-vdd-buck-supply = <&eldo2_8952>;
|
|
qcom,cdc-vdd-buck-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-buck-current = <650000>;
|
|
|
|
cdc-buck-sido-supply = <&eldo2_8952>;
|
|
qcom,cdc-buck-sido-voltage = <1800000 1800000>;
|
|
qcom,cdc-buck-sido-current = <250000>;
|
|
|
|
cdc-vdd-tx-h-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-tx-h-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-tx-h-current = <25000>;
|
|
|
|
cdc-vdd-rx-h-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-rx-h-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-rx-h-current = <25000>;
|
|
|
|
cdc-vdd-px-supply = <&pm8950_l5>;
|
|
qcom,cdc-vdd-px-voltage = <1800000 1800000>;
|
|
qcom,cdc-vdd-px-current = <10000>;
|
|
|
|
cdc-vdd-mic-bias-supply = <&pm8950_l13>;
|
|
qcom,cdc-vdd-mic-bias-voltage = <3075000 3075000>;
|
|
qcom,cdc-vdd-mic-bias-current = <15000>;
|
|
|
|
qcom,cdc-static-supplies =
|
|
"cdc-vdd-buck",
|
|
"cdc-buck-sido",
|
|
"cdc-vdd-tx-h",
|
|
"cdc-vdd-rx-h",
|
|
"cdc-vdd-px";
|
|
|
|
qcom,cdc-micbias1-mv = <1800>;
|
|
qcom,cdc-micbias2-mv = <1800>;
|
|
qcom,cdc-micbias3-mv = <1800>;
|
|
qcom,cdc-micbias4-mv = <1800>;
|
|
|
|
qcom,cdc-mclk-clk-rate = <9600000>;
|
|
qcom,cdc-slim-ifd = "tasha-slim-ifd";
|
|
qcom,cdc-slim-ifd-elemental-addr = [00 00 A0 01 17 02];
|
|
qcom,cdc-dmic-sample-rate = <4800000>;
|
|
|
|
clock-names = "wcd_clk";
|
|
clocks = <&clock_audio clk_audio_pmi_clk>;
|
|
};
|
|
};
|