Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9a3ca908 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ARM: dts: msm: Add support for WCD934x codec on SDM855 target"

parents b9a03a91 9c197451
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1041,7 +1041,8 @@ Example of child node that would have qcom,wdsp-cmpnt-dev-name property
* SDM855 ASoC Machine driver

Required properties:
- compatible : "qcom,sdm855-asoc-snd-pahu-aqt"
- compatible : "qcom,sdm855-asoc-snd-pahu-aqt" for pahu codec and
               "qcom,sdm855-asoc-snd-tavil" for tavil codec.
- qcom,model : The user-visible name of this sound card.
- qcom,pahu-ext-clk-freq : External CLK frequency value for pahu codec
- qcom,audio-routing : A list of the connections between audio components.
+1 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ Qualcomm Technologies, Inc. WCD audio CODEC
Required properties:

 - compatible : "qcom,pahu-slim-pgd" or "qcom,pahu-i2c" for pahu Codec
                "qcom,tavil-slim-pgd" or "qcom,tavil-i2c-pgd" for Tavil codec
 - elemental-addr: codec slimbus slave PGD enumeration address.(48 bits)

 - qcom,cdc-reset-gpio: gpio used for codec SOC reset.
+32 −0
Original line number Diff line number Diff line
@@ -42,4 +42,36 @@
			};
		};
	};

	tavil_codec {
		swr_master {
			compatible = "qcom,swr-wcd";
			#address-cells = <2>;
			#size-cells = <0>;

			wsa881x_70211: wsa881x@20170211 {
				compatible = "qcom,wsa881x";
				reg = <0x00 0x20170211>;
				qcom,spkr-sd-n-node = <&wsa_spk_wcd_sd1>;
			};

			wsa881x_70212: wsa881x@20170212 {
				compatible = "qcom,wsa881x";
				reg = <0x00 0x20170212>;
				qcom,spkr-sd-n-node = <&wsa_spk_wcd_sd2>;
			};

			wsa881x_70213: wsa881x@21170213 {
				compatible = "qcom,wsa881x";
				reg = <0x00 0x21170213>;
				qcom,spkr-sd-n-node = <&wsa_spk_wcd_sd1>;
			};

			wsa881x_70214: wsa881x@21170214 {
				compatible = "qcom,wsa881x";
				reg = <0x00 0x21170214>;
				qcom,spkr-sd-n-node = <&wsa_spk_wcd_sd2>;
			};
		};
	};
};
+120 −1
Original line number Diff line number Diff line
@@ -54,6 +54,55 @@
				  "SpkrLeft", "SpkrRight";
};

&snd_934x {
	qcom,audio-routing =
		"AIF4 VI", "MCLK",
		"RX_BIAS", "MCLK",
		"MADINPUT", "MCLK",
		"hifi amp", "LINEOUT1",
		"hifi amp", "LINEOUT2",
		"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",
		"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-mbhc-hphl-swh = <1>;
	qcom,msm-mbhc-gnd-swh = <1>;
	qcom,msm-mbhc-hs-mic-max-threshold-mv = <1700>;
	qcom,msm-mbhc-hs-mic-min-threshold-mv = <50>;
	qcom,hph-en0-gpio = <&tavil_hph_en0>;
	qcom,hph-en1-gpio = <&tavil_hph_en1>;
	qcom,tavil-mclk-clk-freq = <9600000>;

	asoc-codec = <&stub_codec>, <&ext_disp_audio_codec>;
	asoc-codec-names = "msm-stub-codec.1",
			   "msm-ext-disp-audio-codec-rx";

	qcom,wsa-max-devs = <2>;
	qcom,wsa-devs = <&wsa881x_70211>, <&wsa881x_70212>,
			<&wsa881x_70213>, <&wsa881x_70214>;
	qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight",
				  "SpkrLeft", "SpkrRight";
};

&soc {
	wcd9xxx_intc: wcd9xxx-irq {
		status = "ok";
@@ -90,7 +139,7 @@
				     "g_glink_audio_data";
	};

	qcom,wcd-dsp-mgr {
	pahu_wdsp: wcd-dsp-mgr@1 {
		compatible = "qcom,wcd-dsp-mgr";
		qcom,wdsp-components = <&wcd9360_cdc 0>,
				       <&wcd_spi_0 1>,
@@ -98,6 +147,14 @@
		qcom,img-filename = "cpe_9360";
	};

	tavil_wdsp: wcd-dsp-mgr@2 {
		compatible = "qcom,wcd-dsp-mgr";
		qcom,wdsp-components = <&wcd934x_cdc 0>,
				       <&tavil_spi_0 1>,
				       <&glink_spi_xprt_wdsp 2>;
		qcom,img-filename = "cpe_9340";
	};

	aqt_rst_gpio: msm_cdc_pinctrl@80 {
		compatible = "qcom,msm-cdc-pinctrl";
		pinctrl-names = "aud_active", "aud_sleep";
@@ -178,6 +235,68 @@
		};

	};

	wcd934x_cdc: tavil_codec {
		compatible = "qcom,tavil-slim-pgd";
		elemental-addr = [00 01 50 02 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,wcd-rst-gpio-node = <&wcd_rst_gpio>;

		clock-names = "wcd_clk";
		clocks = <&clock_audio_lnbb>;

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

		cdc-buck-sido-supply = <&pm855_s4>;
		qcom,cdc-buck-sido-voltage = <1800000 1800000>;
		qcom,cdc-buck-sido-current = <250000>;

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

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

		cdc-vddpx-1-supply = <&pm855_s4>;
		qcom,cdc-vddpx-1-voltage = <1800000 1800000>;
		qcom,cdc-vddpx-1-current = <10000>;

		qcom,cdc-static-supplies = "cdc-vdd-buck",
					   "cdc-buck-sido",
					   "cdc-vdd-tx-h",
					   "cdc-vdd-rx-h",
					   "cdc-vddpx-1";

		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 = "tavil-slim-ifd";
		qcom,cdc-slim-ifd-elemental-addr = [00 00 50 02 17 02];
		qcom,cdc-dmic-sample-rate = <4800000>;
		qcom,cdc-mad-dmic-rate = <600000>;

		qcom,wdsp-cmpnt-dev-name = "tavil_codec";

		tavil_spi_0: wcd_spi {
			compatible = "qcom,wcd-spi-v2";
			qcom,master-bus-num = <0>;
			qcom,chip-select = <0>;
			qcom,max-frequency = <24000000>;
			qcom,mem-base-addr = <0x100000>;
		};
	};
};

&qupv3_se4_i2c {
+60 −0
Original line number Diff line number Diff line
@@ -98,6 +98,66 @@
		compatible = "qcom,fsa4480-i2c";
		reg = <0x43>;
	};

	snd_934x: sound-tavil {
		compatible = "qcom,sdm855-asoc-snd-tavil";
		qcom,model = "sdm855-tavil-snd-card";
		qcom,mi2s-audio-intf;
		qcom,auxpcm-audio-intf;
		qcom,msm-mi2s-master = <1>, <1>, <1>, <1>;

		asoc-platform = <&pcm0>, <&pcm1>, <&pcm2>, <&voip>, <&voice>,
				<&loopback>, <&compress>, <&hostless>,
				<&afe>, <&lsm>, <&routing>, <&compr>,
				<&pcm_noirq>;
		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-compr-dsp",
				"msm-pcm-dsp-noirq";
		asoc-cpu = <&dai_hdmi>, <&dai_dp>,
				<&dai_mi2s0>, <&dai_mi2s1>,
				<&dai_mi2s2>, <&dai_mi2s3>,
				<&dai_pri_auxpcm>, <&dai_sec_auxpcm>,
				<&dai_tert_auxpcm>, <&dai_quat_auxpcm>,
				<&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>, <&sb_6_rx>,
				<&sb_7_rx>, <&sb_7_tx>, <&sb_8_tx>,
				<&usb_audio_rx>, <&usb_audio_tx>,
				<&dai_pri_tdm_rx_0>, <&dai_pri_tdm_tx_0>,
				<&dai_sec_tdm_rx_0>, <&dai_sec_tdm_tx_0>,
				<&dai_tert_tdm_rx_0>, <&dai_tert_tdm_tx_0>,
				<&dai_quat_tdm_rx_0>, <&dai_quat_tdm_tx_0>;
		asoc-cpu-names = "msm-dai-q6-hdmi.8",  "msm-dai-q6-dp.24608",
				"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
				"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
				"msm-dai-q6-auxpcm.1", "msm-dai-q6-auxpcm.2",
				"msm-dai-q6-auxpcm.3", "msm-dai-q6-auxpcm.4",
				"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.16396", "msm-dai-q6-dev.16398",
				"msm-dai-q6-dev.16399", "msm-dai-q6-dev.16401",
				"msm-dai-q6-dev.28672", "msm-dai-q6-dev.28673",
				"msm-dai-q6-tdm.36864", "msm-dai-q6-tdm.36865",
				"msm-dai-q6-tdm.36880", "msm-dai-q6-tdm.36881",
				"msm-dai-q6-tdm.36896", "msm-dai-q6-tdm.36897",
				"msm-dai-q6-tdm.36912", "msm-dai-q6-tdm.36913";
	};
};

&slim_aud {
Loading