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

Commit 79d8f628 authored by Sankeerth Billakanti's avatar Sankeerth Billakanti
Browse files

disp: msm: dp: clear notification states for dp mst



If a DP MST display is connected after a DP SST unplug, the
DISCONNECT_NOTIFIED state is not cleared and CONNECT_NOTIFIED
state is not set. These states are not relevant for DP MST and
hence skipped during the send_notification. But the
DISCONNECT_NOTIFIED state that was not cleared from the previous
SST unplug will prevent the wait for completion when DP MST is
disconnected. This will trigger the host_unready to get executed
before the dp_display_disable happens for the DP MST displays.
As the result, the dp_display_disable exits early causing all the
stream clocks and the panels objects to remain active even after
unplug.

As CONNECT_NOTIFIED and DISCONNECT_NOTIFIED state are not relevant
for DP MST, clearing them if DP MST hpd detected in dp_display.

Change-Id: Iaf0e762633eb276e96cb860fda480adb04718eb9
Signed-off-by: default avatarSankeerth Billakanti <sbillaka@codeaurora.org>
parent 0f6a0559
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -681,6 +681,7 @@ static void dp_display_send_hpd_event(struct dp_display_private *dp)

	if (dp->mst.mst_active) {
		DP_DEBUG("skip notification for mst mode\n");
		dp_display_state_remove(DP_STATE_DISCONNECT_NOTIFIED);
		return;
	}