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

Commit af6aabe1 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 audio DT changes for mdmcalifornium"

parents e64955f9 67633898
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@ Required properties:

 - compatible : "qcom,taiko-slim-pgd" or "qcom,tapan-slim-pgd" for Tapan codec
		or "qcom,tomtom-slim-pgd" for the Tomtom codec
		or "qcom,tasha-slim-pgd" for Tasha Codec
		or "qcom,tasha-slim-pgd" or "qcom,tasha-i2c-pgd" for Tasha Codec
 - elemental-addr: codec slimbus slave PGD enumeration address.(48 bits)

 - qcom,cdc-reset-gpio: gpio used for codec SOC reset.
+48 −0
Original line number Diff line number Diff line
@@ -99,6 +99,54 @@
		pinctrl-0 = <&i2c_3_active>;
		pinctrl-1 = <&i2c_3_sleep>;
		status = "disabled";

		wcd9xxx_codec@d{
			compatible = "qcom,tasha-i2c-pgd";
			reg = <0x0d>;

			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 = <&tlmm_pinmux 90 0>;

			qcom,msm-mbhc-hphl-swh = <0>;
			qcom,msm-mbhc-gnd-swh = <0>;

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

			cdc-buck-sido-supply = <&codec_buck_vreg>;
			qcom,cdc-buck-sido-voltage = <1800000 1800000>;
			qcom,cdc-buck-sido-current = <200000>;

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

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

			cdc-vddpx-1-supply = <&pmdcalifornium_l6>;
			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 = <12288000>;
			qcom,cdc-dmic-sample-rate = <4800000>;
		};
	};

	i2c_4: i2c@78B8000 { /* BLSP1 QUP4 */
+141 −0
Original line number Diff line number Diff line
@@ -442,5 +442,146 @@
				bias-disable;
			};
		};

		i2s_mclk {
			i2s_mclk_sleep: i2s_mclk_sleep {
				mux {
					pins = "gpio71";
					function = "i2s_mclk";
				};

				config {
					pins = "gpio71";
					drive-strength = <2>;	/* 2 mA */
					bias-pull-down;		/* PULL DOWN */
				};
			};

			i2s_mclk_active: i2s_mclk_active {
				mux {
					pins = "gpio71";
					function = "i2s_mclk";
				};

				config {
					pins = "gpio71";
					drive-strength = <8>;	/* 8 mA */
					bias-disable;		/* NO PULL*/
					output-high;
				};
			};

		};

		pmx_pri_mi2s_dout {
			pri_mi2s_ws_sleep: pri_mi2s_ws_sleep {
				mux {
					pins = "gpio12";
					function = "pri_mi2s_ws_a";
				};

				config {
					pins = "gpio12";
					drive-strength = <2>;	/* 2 mA */
					bias-pull-down;		/* PULL DOWN */
				};
			};

			pri_mi2s_sck_sleep: pri_mi2s_sck_sleep {
				mux {
					pins = "gpio15";
					function = "pri_mi2s_sck_a";
				};

				config {
					pins = "gpio15";
					drive-strength = <2>;	/* 2 mA */
					bias-pull-down;		/* PULL DOWN */
				};
			};

			pri_mi2s_dout_sleep: pri_mi2s_dout_sleep {
				mux {
					pins = "gpio14";
					function = "pri_mi2s_data1_a";
				};

				config {
					pins = "gpio14";
					drive-strength = <2>;	/* 2 mA */
					bias-pull-down;		/* PULL DOWN */
				};
			};

			pri_mi2s_ws_active: pri_mi2s_ws_active {
				mux {
					pins = "gpio12";
					function = "pri_mi2s_ws_a";
				};

				config {
					pins = "gpio12";
					drive-strength = <8>;	/* 8 mA */
					bias-disable;		/* NO PULL*/
					output-high;
				};
			};

			pri_mi2s_sck_active: pri_mi2s_sck_active {
				mux {
					pins = "gpio15";
					function = "pri_mi2s_sck_a";
				};

				config {
					pins = "gpio15";
					drive-strength = <8>;	/* 8 mA */
					bias-disable;		/* NO PULL*/
					output-high;
				};
			};

			pri_mi2s_dout_active: pri_mi2s_dout_active {
				mux {
					pins = "gpio14";
					function = "pri_mi2s_data1_a";
				};

				config {
					pins = "gpio14";
					drive-strength = <8>;	/* 8 mA */
					bias-disable;		/* NO PULL*/
					output-high;
				};
			};
		};

		pmx_pri_mi2s_din {
			pri_mi2s_din_sleep: pri_mi2s_din_sleep {
				mux {
					pins = "gpio13";
					function = "pri_mi2s_data0_a";
				};

				config {
					pins = "gpio13";
					drive-strength = <2>;	/* 2 mA */
					bias-pull-down;		/* PULL DOWN */
				};
			};

			pri_mi2s_din_active: pri_mi2s_din_active {
				mux {
					pins = "gpio13";
					function = "pri_mi2s_data0_a";
				};

				config {
					pins = "gpio13";
					drive-strength = <8>;	/* 8 mA */
					bias-disable;		/* NO PULL */
				};
			};
		};
	};
};
+242 −0
Original line number Diff line number Diff line
@@ -875,6 +875,248 @@
	mitigation_profile0: qcom,limit_info-0 {
		qcom,temperature-sensor = <&sensor_information3>;
	};

	wcd9xxx_intc: wcd9xxx-irq {
		compatible = "qcom,wcd9xxx-irq";
		interrupt-controller;
		#interrupt-cells = <1>;
		interrupt-parent = <&tlmm_pinmux>;
		qcom,gpio-connect = <&tlmm_pinmux 94 0>;
	};

	clock_audio: audio_ext_clk {
		compatible = "qcom,audio-ref-clk";
		qcom,codec-mclk-clk-freq = <12288000>;
		pinctrl-names = "sleep", "active";
		pinctrl-0 = <&i2s_mclk_sleep>;
		pinctrl-1 = <&i2s_mclk_active>;
		#clock-cells = <1>;
	};

	sound {
		compatible = "qcom,mdm-audio-tasha";
		qcom,model = "mdm-tasha-i2s-snd-card";

		qcom,audio-routing =
			"AIF4 VI", "MCLK",
			"RX_BIAS", "MCLK",
			"MADINPUT", "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,tasha-mclk-clk-freq = <12288000>;
		asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>,
				<&loopback>, <&hostless>, <&afe>, <&routing>,
				<&pcm_dtmf>, <&host_pcm>;
		asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1",
				"msm-voip-dsp", "msm-pcm-voice",
				"msm-pcm-loopback", "msm-pcm-hostless",
				"msm-pcm-afe", "msm-pcm-routing",
				"msm-pcm-dtmf", "msm-voice-host-pcm";
		asoc-cpu = <&dai_pri_auxpcm>, <&mi2s_prim>, <&dtmf_tx>,
				<&rx_capture_tx>, <&rx_playback_rx>,
				<&tx_capture_tx>, <&tx_playback_rx>,
				<&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>,
				<&afe_proxy_tx>, <&incall_record_rx>,
				<&incall_record_tx>, <&incall_music_rx>;
		asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-mi2s.0",
				"msm-dai-stub-dev.4", "msm-dai-stub-dev.5",
				"msm-dai-stub-dev.6", "msm-dai-stub-dev.7",
				"msm-dai-stub-dev.8", "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";
		asoc-codec = <&stub_codec>;
		asoc-codec-names = "msm-stub-codec.1";
		qcom,aux-codec = <&stub_codec>;
	};

	qcom,msm-adsp-loader {
		compatible = "qcom,adsp-loader";
		qcom,adsp-state = <0>;
		qcom,proc-img-to-load = "modem";
	};

	qcom,msm-audio-ion {
		compatible = "qcom,msm-audio-ion";
	};

	pcm0: qcom,msm-pcm {
		compatible = "qcom,msm-pcm-dsp";
		qcom,msm-pcm-dsp-id = <0>;
	};

	routing: qcom,msm-pcm-routing {
		compatible = "qcom,msm-pcm-routing";
	};

	pcm1: qcom,msm-pcm-low-latency {
		compatible = "qcom,msm-pcm-dsp";
		qcom,msm-pcm-dsp-id = <1>;
		qcom,msm-pcm-low-latency;
		qcom,latency-level = "ultra";
	};

	qcom,msm-compr-dsp {
		compatible = "qcom,msm-compr-dsp";
	};

	voip: qcom,msm-voip-dsp {
		compatible = "qcom,msm-voip-dsp";
	};

	voice: qcom,msm-pcm-voice {
		compatible = "qcom,msm-pcm-voice";
		qcom,destroy-cvd;
	};

	stub_codec: qcom,msm-stub-codec {
		compatible = "qcom,msm-stub-codec";
	};

	qcom,msm-dai-fe {
		compatible = "qcom,msm-dai-fe";
	};

	afe: qcom,msm-pcm-afe {
		compatible = "qcom,msm-pcm-afe";
	};

	 hostless: qcom,msm-pcm-hostless {
		compatible = "qcom,msm-pcm-hostless";
	};

	host_pcm: qcom,msm-voice-host-pcm {
		compatible = "qcom,msm-voice-host-pcm";
	};

	loopback: qcom,msm-pcm-loopback {
		compatible = "qcom,msm-pcm-loopback";
	};

	qcom,msm-dai-stub {
		compatible = "qcom,msm-dai-stub";
		dtmf_tx: qcom,msm-dai-stub-dtmf-tx {
			compatible = "qcom,msm-dai-stub-dev";
			qcom,msm-dai-stub-dev-id = <4>;
		};

		rx_capture_tx: qcom,msm-dai-stub-host-rx-capture-tx {
			compatible = "qcom,msm-dai-stub-dev";
			qcom,msm-dai-stub-dev-id = <5>;
		};

		rx_playback_rx: qcom,msm-dai-stub-host-rx-playback-rx {
			compatible = "qcom,msm-dai-stub-dev";
			qcom,msm-dai-stub-dev-id = <6>;
		};

		tx_capture_tx: qcom,msm-dai-stub-host-tx-capture-tx {
			compatible = "qcom,msm-dai-stub-dev";
			qcom,msm-dai-stub-dev-id = <7>;
		};

		tx_playback_rx: qcom,msm-dai-stub-host-tx-playback-rx {
			compatible = "qcom,msm-dai-stub-dev";
			qcom,msm-dai-stub-dev-id = <8>;
		};
	};

	qcom,msm-dai-q6 {
		compatible = "qcom,msm-dai-q6";
		afe_pcm_rx: qcom,msm-dai-q6-be-afe-pcm-rx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <224>;
		};

		afe_pcm_tx: qcom,msm-dai-q6-be-afe-pcm-tx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <225>;
		};

		afe_proxy_rx: qcom,msm-dai-q6-afe-proxy-rx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <241>;
		};

		afe_proxy_tx: qcom,msm-dai-q6-afe-proxy-tx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <240>;
		};

		incall_record_rx: qcom,msm-dai-q6-incall-record-rx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <32771>;
		};

		incall_record_tx: qcom,msm-dai-q6-incall-record-tx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <32772>;
		};

		incall_music_rx: qcom,msm-dai-q6-incall-music-rx {
			compatible = "qcom,msm-dai-q6-dev";
			qcom,msm-dai-q6-dev-id = <32773>;
		};
	};

	pcm_dtmf: qcom,msm-pcm-dtmf {
		compatible = "qcom,msm-pcm-dtmf";
	};

	dai_pri_auxpcm: qcom,msm-pri-auxpcm {
		compatible = "qcom,msm-auxpcm-dev";
		qcom,msm-cpudai-auxpcm-mode = <0>, <0>;
		qcom,msm-cpudai-auxpcm-sync = <1>, <1>;
		qcom,msm-cpudai-auxpcm-frame = <5>, <4>;
		qcom,msm-cpudai-auxpcm-quant = <2>, <2>;
		qcom,msm-cpudai-auxpcm-num-slots = <1>, <1>;
		qcom,msm-cpudai-auxpcm-slot-mapping = <1>, <1>;
		qcom,msm-cpudai-auxpcm-data = <0>, <0>;
		qcom,msm-cpudai-auxpcm-pcm-clk-rate = <2048000>, <2048000>;
		qcom,msm-auxpcm-interface = "primary";
	};

	qcom,msm-dai-mi2s {
		compatible = "qcom,msm-dai-mi2s";
		mi2s_prim: qcom,msm-dai-q6-mi2s-prim {
			compatible = "qcom,msm-dai-q6-mi2s";
			qcom,msm-dai-q6-mi2s-dev-id = <0>;
			qcom,msm-mi2s-rx-lines = <2>;
			qcom,msm-mi2s-tx-lines = <1>;
			pinctrl-names = "default", "idle";
			pinctrl-0 = <&pri_mi2s_ws_active
				     &pri_mi2s_sck_active
				     &pri_mi2s_dout_active>,
				    <&pri_mi2s_din_active>;
			pinctrl-1 = <&pri_mi2s_ws_sleep
				     &pri_mi2s_sck_sleep
				     &pri_mi2s_dout_sleep>,
				    <&pri_mi2s_din_sleep>;
		};
	};
};

&gdsc_usb30 {