intel-gfx.lists.freedesktop.org archive mirror
 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

* [RESEND FOR CI PATCH 2/2] drm/i915: Fixing eDP detection on certain platforms
  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 ` Ander Conselvan de Oliveira
  2016-04-21 20:59   ` Lyude
  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
  1 sibling, 1 reply; 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, Shubhangi Shrivastava

From: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>

Since commit 30d9aa4265fe ("drm/i915: Read sink_count dpcd always"),
the status of a DP connector depends on its sink count value.
However, some eDP panels don't set that value appropriately,
causing them to be reported as disconnected.
Fix this by ignoring sink count for eDP.

v2: Rephrased commit message. (Ander)
    In case of eDP, returning status as connected if DPCD
    read succeeds to avoid any further operations.

Fixes: 30d9aa4265fe ("drm/i915: Read sink_count dpcd always")
Cc: Ander Conselvan De Oliveira <conselvan2@gmail.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reported-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
Tested-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1460444034-22320-1-git-send-email-shubhangi.shrivastava@intel.com
---
 drivers/gpu/drm/i915/intel_dp.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index 6c6f95a2..460c421 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -3776,7 +3776,7 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
 	 * downstream port information. So, an early return here saves
 	 * time from performing other operations which are not required.
 	 */
-	if (!intel_dp->sink_count)
+	if (!is_edp(intel_dp) && !intel_dp->sink_count)
 		return false;
 
 	/* Check if the panel supports PSR */
@@ -4309,6 +4309,9 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp)
 	if (!intel_dp_get_dpcd(intel_dp))
 		return connector_status_disconnected;
 
+	if (is_edp(intel_dp))
+		return connector_status_connected;
+
 	/* if there's no downstream port, we're done */
 	if (!(dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DWN_STRM_PORT_PRESENT))
 		return connector_status_connected;
-- 
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

* ✗ 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()
  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-13 16:53 ` Patchwork
  2016-04-19 16:28   ` Ander Conselvan De Oliveira
  1 sibling, 1 reply; 6+ messages in thread
From: Patchwork @ 2016-04-13 16:53 UTC (permalink / raw)
  To: Ander Conselvan de Oliveira; +Cc: intel-gfx

== Series Details ==

Series: series starting with [RESEND,FOR,CI,1/2] drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse()
URL   : https://patchwork.freedesktop.org/series/5642/
State : failure

== Summary ==

Series 5642v1 Series without cover letter
http://patchwork.freedesktop.org/api/1.0/series/5642/revisions/1/mbox/

Test gem_busy:
        Subgroup basic-blt:
                pass       -> SKIP       (bsw-nuc-2)
Test gem_exec_suspend:
        Subgroup basic-s3:
                incomplete -> PASS       (hsw-gt2)

bdw-nuci7        total:203  pass:191  dwarn:0   dfail:0   fail:0   skip:12 
bdw-ultra        total:203  pass:180  dwarn:0   dfail:0   fail:0   skip:23 
bsw-nuc-2        total:202  pass:162  dwarn:0   dfail:0   fail:0   skip:40 
byt-nuc          total:202  pass:164  dwarn:0   dfail:0   fail:0   skip:38 
hsw-brixbox      total:203  pass:179  dwarn:0   dfail:0   fail:0   skip:24 
hsw-gt2          total:203  pass:184  dwarn:0   dfail:0   fail:0   skip:19 
ilk-hp8440p      total:203  pass:135  dwarn:0   dfail:0   fail:0   skip:68 
ivb-t430s        total:203  pass:175  dwarn:0   dfail:0   fail:0   skip:28 
skl-i7k-2        total:203  pass:178  dwarn:0   dfail:0   fail:0   skip:25 
skl-nuci5        total:203  pass:192  dwarn:0   dfail:0   fail:0   skip:11 
snb-x220t        total:203  pass:165  dwarn:0   dfail:0   fail:1   skip:37 
BOOT FAILED for snb-dellxps

Results at /archive/results/CI_IGT_test/Patchwork_1883/

631ffd2f45bb43964f729e8661532fb115f5eeec drm-intel-nightly: 2016y-04m-13d-13h-00m-18s UTC integration manifest
abc7779 drm/i915: Fixing eDP detection on certain platforms
21f527d drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse()

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

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

* Re: ✗ 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()
  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
  0 siblings, 0 replies; 6+ messages in thread
From: Ander Conselvan De Oliveira @ 2016-04-19 16:28 UTC (permalink / raw)
  To: intel-gfx; +Cc: Bride, Jim

Finland CI approved the patch in a resend to trybot, and the Romania failures
are know issues, so I pushed those two patches to dinq.

https://patchwork.freedesktop.org/series/5864/

Ander

On Wed, 2016-04-13 at 16:53 +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [RESEND,FOR,CI,1/2] drm/i915/dp/mst: Fix MST
> logic in intel_dp_long_pulse()
> URL   : https://patchwork.freedesktop.org/series/5642/
> State : failure
> 
> == Summary ==
> 
> Series 5642v1 Series without cover letter
> http://patchwork.freedesktop.org/api/1.0/series/5642/revisions/1/mbox/
> 
> Test gem_busy:
>         Subgroup basic-blt:
>                 pass       -> SKIP       (bsw-nuc-2)
> Test gem_exec_suspend:
>         Subgroup basic-s3:
>                 incomplete -> PASS       (hsw-gt2)
> 
> bdw-nuci7        total:203  pass:191  dwarn:0   dfail:0   fail:0   skip:12 
> bdw-ultra        total:203  pass:180  dwarn:0   dfail:0   fail:0   skip:23 
> bsw-nuc-2        total:202  pass:162  dwarn:0   dfail:0   fail:0   skip:40 
> byt-nuc          total:202  pass:164  dwarn:0   dfail:0   fail:0   skip:38 
> hsw-brixbox      total:203  pass:179  dwarn:0   dfail:0   fail:0   skip:24 
> hsw-gt2          total:203  pass:184  dwarn:0   dfail:0   fail:0   skip:19 
> ilk-hp8440p      total:203  pass:135  dwarn:0   dfail:0   fail:0   skip:68 
> ivb-t430s        total:203  pass:175  dwarn:0   dfail:0   fail:0   skip:28 
> skl-i7k-2        total:203  pass:178  dwarn:0   dfail:0   fail:0   skip:25 
> skl-nuci5        total:203  pass:192  dwarn:0   dfail:0   fail:0   skip:11 
> snb-x220t        total:203  pass:165  dwarn:0   dfail:0   fail:1   skip:37 
> BOOT FAILED for snb-dellxps
> 
> Results at /archive/results/CI_IGT_test/Patchwork_1883/
> 
> 631ffd2f45bb43964f729e8661532fb115f5eeec drm-intel-nightly: 2016y-04m-13d-13h
> -00m-18s UTC integration manifest
> abc7779 drm/i915: Fixing eDP detection on certain platforms
> 21f527d drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse()
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [RESEND FOR CI PATCH 2/2] drm/i915: Fixing eDP detection on certain platforms
  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
  0 siblings, 1 reply; 6+ messages in thread
From: Lyude @ 2016-04-21 20:59 UTC (permalink / raw)
  To: Ander Conselvan de Oliveira, intel-gfx; +Cc: Shubhangi Shrivastava

Ping. Any chance we could get these pushed upstream soon?

On Wed, 2016-04-13 at 10:47 +0300, Ander Conselvan de Oliveira wrote:
> From: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
> 
> Since commit 30d9aa4265fe ("drm/i915: Read sink_count dpcd always"),
> the status of a DP connector depends on its sink count value.
> However, some eDP panels don't set that value appropriately,
> causing them to be reported as disconnected.
> Fix this by ignoring sink count for eDP.
> 
> v2: Rephrased commit message. (Ander)
>     In case of eDP, returning status as connected if DPCD
>     read succeeds to avoid any further operations.
> 
> Fixes: 30d9aa4265fe ("drm/i915: Read sink_count dpcd always")
> Cc: Ander Conselvan De Oliveira <conselvan2@gmail.com>
> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> Reported-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
> Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
> Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
> Tested-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.
> com>
> Link: http://patchwork.freedesktop.org/patch/msgid/1460444034-22320-1-git-send
> -email-shubhangi.shrivastava@intel.com
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 6c6f95a2..460c421 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -3776,7 +3776,7 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
>  	 * downstream port information. So, an early return here saves
>  	 * time from performing other operations which are not required.
>  	 */
> -	if (!intel_dp->sink_count)
> +	if (!is_edp(intel_dp) && !intel_dp->sink_count)
>  		return false;
>  
>  	/* Check if the panel supports PSR */
> @@ -4309,6 +4309,9 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp)
>  	if (!intel_dp_get_dpcd(intel_dp))
>  		return connector_status_disconnected;
>  
> +	if (is_edp(intel_dp))
> +		return connector_status_connected;
> +
>  	/* if there's no downstream port, we're done */
>  	if (!(dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DWN_STRM_PORT_PRESENT))
>  		return connector_status_connected;
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [RESEND FOR CI PATCH 2/2] drm/i915: Fixing eDP detection on certain platforms
  2016-04-21 20:59   ` Lyude
@ 2016-04-22  5:35     ` Ander Conselvan De Oliveira
  0 siblings, 0 replies; 6+ messages in thread
From: Ander Conselvan De Oliveira @ 2016-04-22  5:35 UTC (permalink / raw)
  To: Lyude, intel-gfx; +Cc: Shubhangi Shrivastava

On Thu, 2016-04-21 at 16:59 -0400, Lyude wrote:
> Ping. Any chance we could get these pushed upstream soon?

They were pushed to dinq Tuesday.

Ander

> 
> On Wed, 2016-04-13 at 10:47 +0300, Ander Conselvan de Oliveira wrote:
> > From: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
> > 
> > Since commit 30d9aa4265fe ("drm/i915: Read sink_count dpcd always"),
> > the status of a DP connector depends on its sink count value.
> > However, some eDP panels don't set that value appropriately,
> > causing them to be reported as disconnected.
> > Fix this by ignoring sink count for eDP.
> > 
> > v2: Rephrased commit message. (Ander)
> >     In case of eDP, returning status as connected if DPCD
> >     read succeeds to avoid any further operations.
> > 
> > Fixes: 30d9aa4265fe ("drm/i915: Read sink_count dpcd always")
> > Cc: Ander Conselvan De Oliveira <conselvan2@gmail.com>
> > Cc: Jani Nikula <jani.nikula@linux.intel.com>
> > Reported-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
> > Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
> > Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com>
> > Tested-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> > Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
> > Signed-off-by: Ander Conselvan de Oliveira <
> > ander.conselvan.de.oliveira@intel.
> > com>
> > Link: 
> > http://patchwork.freedesktop.org/patch/msgid/1460444034-22320-1-git-send
> > -email-shubhangi.shrivastava@intel.com
> > ---
> >  drivers/gpu/drm/i915/intel_dp.c | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_dp.c
> > b/drivers/gpu/drm/i915/intel_dp.c
> > index 6c6f95a2..460c421 100644
> > --- a/drivers/gpu/drm/i915/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/intel_dp.c
> > @@ -3776,7 +3776,7 @@ intel_dp_get_dpcd(struct intel_dp *intel_dp)
> >  	 * downstream port information. So, an early return here saves
> >  	 * time from performing other operations which are not required.
> >  	 */
> > -	if (!intel_dp->sink_count)
> > +	if (!is_edp(intel_dp) && !intel_dp->sink_count)
> >  		return false;
> >  
> >  	/* Check if the panel supports PSR */
> > @@ -4309,6 +4309,9 @@ intel_dp_detect_dpcd(struct intel_dp *intel_dp)
> >  	if (!intel_dp_get_dpcd(intel_dp))
> >  		return connector_status_disconnected;
> >  
> > +	if (is_edp(intel_dp))
> > +		return connector_status_connected;
> > +
> >  	/* if there's no downstream port, we're done */
> >  	if (!(dpcd[DP_DOWNSTREAMPORT_PRESENT] & DP_DWN_STRM_PORT_PRESENT))
> >  		return connector_status_connected;
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).