All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND FOR CI PATCH 1/2] drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse()
@ 2016-04-13  7:47 Ander Conselvan de Oliveira
  2016-04-13  7:47 ` [RESEND FOR CI PATCH 2/2] drm/i915: Fixing eDP detection on certain platforms Ander Conselvan de Oliveira
  2016-04-13 16:53 ` ✗ Fi.CI.BAT: failure for series starting with [RESEND,FOR,CI,1/2] drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse() Patchwork
  0 siblings, 2 replies; 6+ messages in thread
From: Ander Conselvan de Oliveira @ 2016-04-13  7:47 UTC (permalink / raw)
  To: intel-gfx
  Cc: Ander Conselvan de Oliveira, Nathan D Ciobanu,
	Shubhangi Shrivastava

From: "jim.bride@linux.intel.com" <jim.bride@linux.intel.com>

In commit 7d23e3c37bb3 ("drm/i915: Cleaning up intel_dp_hpd_pulse") some
much needed clean-up was done, but unfortunately part of the change
broke DP MST.  The real issue was setting the connector state to
disconnected in the MST case, which is good, but the code then (after
a goto) checks if the connector state is not connected and shuts down
MST if this is the case, which is bad.  With this change both SST and
MST seem to be happy.

v2: Add removed check further up in the function to be sure that MST
    is shut down when we lose the link. (Ander)

Fixes: commit 7d23e3c37bb3 ("drm/i915: Cleaning up intel_dp_hpd_pulse")
cc: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
cc: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
cc: Ander Conselvan de Oliveira <conselvan2@gmail.com>
cc: Nathan D Ciobanu <nathan.d.ciobanu@intel.com>
Signed-off-by: Jim Bride <jim.bride@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Reviewed-by: Lyude <cpaul@redhat.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1460394684-7036-1-git-send-email-jim.bride@linux.intel.com
---
 drivers/gpu/drm/i915/intel_dp.c | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 7523558..6c6f95a2 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -4578,6 +4578,15 @@ intel_dp_long_pulse(struct intel_connector *intel_connector)
 		intel_dp->compliance_test_type = 0;
 		intel_dp->compliance_test_data = 0;
 
+		if (intel_dp->is_mst) {
+			DRM_DEBUG_KMS("MST device may have disappeared %d vs %d\n",
+				      intel_dp->is_mst,
+				      intel_dp->mst_mgr.mst_state);
+			intel_dp->is_mst = false;
+			drm_dp_mst_topology_mgr_set_mst(&intel_dp->mst_mgr,
+							intel_dp->is_mst);
+		}
+
 		goto out;
 	}
 
@@ -4635,20 +4644,9 @@ intel_dp_long_pulse(struct intel_connector *intel_connector)
 	}
 
 out:
-	if (status != connector_status_connected) {
+	if ((status != connector_status_connected) &&
+	    (intel_dp->is_mst == false))
 		intel_dp_unset_edid(intel_dp);
-		/*
-		 * If we were in MST mode, and device is not there,
-		 * get out of MST mode
-		 */
-		if (intel_dp->is_mst) {
-			DRM_DEBUG_KMS("MST device may have disappeared %d vs %d\n",
-				      intel_dp->is_mst, intel_dp->mst_mgr.mst_state);
-			intel_dp->is_mst = false;
-			drm_dp_mst_topology_mgr_set_mst(&intel_dp->mst_mgr,
-							intel_dp->is_mst);
-		}
-	}
 
 	intel_display_power_put(to_i915(dev), power_domain);
 	return;
-- 
2.4.11

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-04-22  5:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-13  7:47 [RESEND FOR CI PATCH 1/2] drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse() Ander Conselvan de Oliveira
2016-04-13  7:47 ` [RESEND FOR CI PATCH 2/2] drm/i915: Fixing eDP detection on certain platforms Ander Conselvan de Oliveira
2016-04-21 20:59   ` Lyude
2016-04-22  5:35     ` Ander Conselvan De Oliveira
2016-04-13 16:53 ` ✗ Fi.CI.BAT: failure for series starting with [RESEND,FOR,CI,1/2] drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse() Patchwork
2016-04-19 16:28   ` Ander Conselvan De Oliveira

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.