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

Commit accf510c authored by Narender Ankam's avatar Narender Ankam
Browse files

msm: mdss: dp: fix display port crash caused by unclocked register access



Display port main link control clock is enabled during UNBLANK ioctl call.
Due to some error reasons, UNBLANK ioctl call may early return without
enabling DP control clock. Later if any ioctl is called and tries
to access unclocked DP link registers, it will cause noc error.
Add a check to handle these ioctls only if DP is fully powered on.

Change-Id: Ie5a5707f708a0e39d21bf06b8e479b7b95249566
Signed-off-by: default avatarNarender Ankam <nankam@codeaurora.org>
parent 7d78f564
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -3045,6 +3045,10 @@ static int mdss_dp_event_handler(struct mdss_panel_data *pdata,
		rc = mdss_dp_on(pdata);
		break;
	case MDSS_EVENT_PANEL_ON:
		if (!dp->power_on) {
			pr_err("DP Controller not powered on\n");
			break;
		}
		mdss_dp_update_hdcp_info(dp);

		if (dp_is_hdcp_enabled(dp)) {
@@ -3065,6 +3069,10 @@ static int mdss_dp_event_handler(struct mdss_panel_data *pdata,
		complete_all(&dp->notification_comp);
		break;
	case MDSS_EVENT_BLANK:
		if (!dp->power_on) {
			pr_err("DP Controller not powered on\n");
			break;
		}
		if (dp_is_hdcp_enabled(dp)) {
			dp->hdcp_status = HDCP_STATE_INACTIVE;