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

Commit 6f177c58 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 codec as child of MSM External display"

parents 1c39aaa3 fb5a1b12
Loading
Loading
Loading
Loading
+10 −8
Original line number Diff line number Diff line
@@ -448,6 +448,14 @@
		qcom,mdss-fb-map = <&mdss_fb1>;
	};

	msm_ext_disp: qcom,msm_ext_disp {
		compatible = "qcom,msm-ext-disp";

		hdmi_audio: qcom,msm-hdmi-audio-rx {
			compatible = "qcom,msm-hdmi-audio-codec-rx";
		};
	};

	mdss_dp_ctrl: qcom,dp_ctrl@c990000 {
		cell-index = <0>;
		compatible = "qcom,mdss-dp";
@@ -483,6 +491,8 @@

		qcom,dp-usbpd-detection = <&pmicobalt_pdphy>;

		qcom,msm_ext_disp = <&msm_ext_disp>;

		qcom,core-supply-entries {
			#address-cells = <1>;
			#size-cells = <0>;
@@ -595,10 +605,6 @@
			      };
	};

	msm_ext_disp: qcom,msm_ext_disp {
		compatible = "qcom,msm-ext-disp";
	};

	mdss_hdmi_tx: qcom,hdmi_tx@c9a0000 {
		cell-index = <0>;
		compatible = "qcom,hdmi-tx";
@@ -631,10 +637,6 @@

		qcom,mdss-fb-map = <&mdss_fb2>;
		qcom,pluggable;

		hdmi_audio: qcom,msm-hdmi-audio-rx {
			compatible = "qcom,msm-hdmi-audio-codec-rx";
		};
	};
};

+0 −22
Original line number Diff line number Diff line
@@ -2971,28 +2971,6 @@ static int hdmi_tx_get_cable_status(struct platform_device *pdev, u32 vote)
	return hpd;
}

int msm_hdmi_register_audio_codec(struct platform_device *pdev,
	struct msm_ext_disp_audio_codec_ops *ops)
{
	struct hdmi_tx_ctrl *hdmi_ctrl = platform_get_drvdata(pdev);
	int ret = 0;

	if (!hdmi_ctrl || !ops) {
		DEV_ERR("%s: invalid input\n", __func__);
		return -EPROBE_DEFER;
	}

	ret = msm_ext_disp_register_audio_codec(hdmi_ctrl->ext_pdev, ops);
	if (ret) {
		pr_err("%s: failed to register codec\n", __func__);
		goto end;
	}

end:
	return ret;
} /* hdmi_tx_audio_register */
EXPORT_SYMBOL(msm_hdmi_register_audio_codec);

static int hdmi_tx_setup_tmds_clk_rate(struct hdmi_tx_ctrl *hdmi_ctrl)
{
	u32 rate = 0;
+6 −0
Original line number Diff line number Diff line
@@ -636,6 +636,12 @@ end:
	return ret;
}

int msm_hdmi_register_audio_codec(struct platform_device *pdev,
	struct msm_ext_disp_audio_codec_ops *ops)
{
	return msm_ext_disp_register_audio_codec(pdev, ops);
}

int msm_ext_disp_register_audio_codec(struct platform_device *pdev,
		struct msm_ext_disp_audio_codec_ops *ops)
{
+7 −48
Original line number Diff line number Diff line
@@ -132,6 +132,13 @@ struct msm_ext_disp_init_data {
int msm_ext_disp_register_audio_codec(struct platform_device *pdev,
		struct msm_ext_disp_audio_codec_ops *ops);

/*
 * msm_hdmi_register_audio_codec() - wrapper for hdmi audio codec registration
 * @pdev: platform device pointer
 * @codec_ops: audio codec operations
 */
int msm_hdmi_register_audio_codec(struct platform_device *pdev,
	struct msm_ext_disp_audio_codec_ops *ops);
/*
 * msm_ext_disp_register_intf() - display interface registration
 * @init_data: data needed to register the display interface
@@ -139,52 +146,4 @@ int msm_ext_disp_register_audio_codec(struct platform_device *pdev,
int msm_ext_disp_register_intf(struct platform_device *pdev,
		struct msm_ext_disp_init_data *init_data);

/* TODO: remove all the display specific functions below */
#ifdef CONFIG_FB_MSM_MDSS_DP_PANEL
int msm_dp_register_audio_codec(struct platform_device *pdev,
	struct msm_ext_disp_audio_codec_ops *ops);

#else
static inline int msm_dp_register_audio_codec(struct platform_device *pdev,
		struct msm_ext_disp_audio_codec_ops *ops) {
	return 0;
}
#endif /* CONFIG_FB_MSM_MDSS_DP_PANEL */
#ifdef CONFIG_FB_MSM_MDSS_HDMI_PANEL
/*
 * Register for HDMI cable connect or disconnect notification.
 * @param handler callback handler for notification
 * @return negative value as error otherwise current status of cable
 */
int register_hdmi_cable_notification(
		struct ext_disp_cable_notify *handler);

/*
 * Un-register for HDMI cable connect or disconnect notification.
 * @param handler callback handler for notification
 * @return negative value as error
 */
int unregister_hdmi_cable_notification(
		struct ext_disp_cable_notify *handler);

int msm_hdmi_register_audio_codec(struct platform_device *pdev,
	struct msm_ext_disp_audio_codec_ops *ops);

#else
static inline int register_hdmi_cable_notification(
		struct ext_disp_cable_notify *handler) {
	return 0;
}

static inline int unregister_hdmi_cable_notification(
		struct ext_disp_cable_notify *handler) {
	return 0;
}

static inline int msm_hdmi_register_audio_codec(struct platform_device *pdev,
		struct msm_ext_disp_audio_codec_ops *ops) {
	return 0;
}
#endif /* CONFIG_FB_MSM_MDSS_HDMI_PANEL */

#endif /*_MSM_EXT_DISPLAY_H_*/