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

Commit a89ddcbd authored by Laxminath Kasam's avatar Laxminath Kasam
Browse files

ARM: dts: msm: add support for hdmi audio for 8937



Add required pinctrl configurations and nodes
to support hdmi audio using dba over quinary interface.

Change-Id: Id429933e571bb6a0419f082ae4832ea4a7b457a5
Signed-off-by: default avatarLaxminath Kasam <lkasam@codeaurora.org>
parent 0aa4a5de
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -271,6 +271,11 @@
		qcom,msm-auxpcm-interface = "primary";
	};

	hdmi_dba: qcom,msm-hdmi-dba-codec-rx {
		compatible = "qcom,msm-hdmi-dba-codec-rx";
		qcom,dba-bridge-chip = "adv7533";
	};

	qcom,msm-audio-ion {
		compatible = "qcom,msm-audio-ion";
		qcom,smmu-version = <1>;
+79 −2
Original line number Diff line number Diff line
@@ -22,8 +22,58 @@
	qcom,msm-hs-micbias-type = "external";
	qcom,msm-micbias1-ext-cap;

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

	qcom,msm-gpios =
		"pri_i2s",
		"us_eu_gpio",
		"quin_i2s";
	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";
	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";
	pinctrl-0 = <&cdc_pdm_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_lines_2_act &cross_conn_det_sus
			&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-2 = <&cdc_pdm_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_lines_2_act &cross_conn_det_act
			&pri_tlmm_lines_sus &pri_tlmm_ws_sus>;
	pinctrl-4 = <&cdc_pdm_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_lines_2_act &cross_conn_det_sus
			&pri_tlmm_lines_act &pri_tlmm_ws_act>;
	pinctrl-6 = <&cdc_pdm_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_lines_2_act &cross_conn_det_act
			&pri_tlmm_lines_act &pri_tlmm_ws_act>;

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

&ext_codec {
@@ -33,11 +83,38 @@
	qcom,msm-mbhc-hphl-swh = <0>;
	qcom,msm-mbhc-gnd-swh = <0>;

	qcom,hdmi-dba-codec-rx;

	qcom,msm-gpios =
		"quin_i2s",
		"us_eu_gpio";
	qcom,pinctrl-names =
		"all_off",
		"quin_act",
		"us_eu_gpio_act",
		"quin_us_eu_gpio_act";
	pinctrl-names =
		"all_off",
		"quin_act",
		"us_eu_gpio_act",
		"quin_us_eu_gpio_act";
	pinctrl-0 = <&pri_tlmm_lines_sus &pri_tlmm_ws_sus
						&cross_conn_det_sus>;
	pinctrl-1 = <&pri_tlmm_lines_act &pri_tlmm_ws_act
						&cross_conn_det_sus>;
	pinctrl-2 = <&pri_tlmm_lines_sus &pri_tlmm_ws_sus
						&cross_conn_det_act>;
	pinctrl-3 = <&pri_tlmm_lines_act &pri_tlmm_ws_act
						&cross_conn_det_act>;

	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";

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

&wcd9xxx_intc {
+53 −0
Original line number Diff line number Diff line
@@ -1023,6 +1023,59 @@
				};
			};
		};
		pri-tlmm-lines {
			pri_tlmm_lines_act: pri_tlmm_lines_act {
				mux {
					pins = "gpio85", "gpio88";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio85", "gpio88";
					drive-strength = <8>;
				};
			};

			pri_tlmm_lines_sus: pri_tlmm_lines_sus {
				mux {
					pins = "gpio85", "gpio88";
					function = "pri_mi2s";
				};

				config {
					pins = "gpio85", "gpio88";
					drive-strength = <2>;
					bias-pull-down;
				};
			};
		};

		pri-tlmm-ws-lines {
			pri_tlmm_ws_act: pri_tlmm_ws_act {
				mux {
					pins = "gpio87";
					function = "pri_mi2s_ws";
				};

				config {
					pins = "gpio87";
					drive-strength = <8>;
				};
			};

			pri_tlmm_ws_sus: pri_tlmm_ws_sus {
				mux {
					pins = "gpio87";
					function = "pri_mi2s_ws";
				};

				config {
					pins = "gpio87";
					drive-strength = <2>;
					bias-pull-down;
				};
			};
		};

		pmx_sdc1_clk {
			sdc1_clk_on: sdc1_clk_on {