All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/i915: Try to suppress more spurious PCH underruns on ILK-IVB
@ 2018-05-24 19:04 Ville Syrjala
  2018-05-24 19:04 ` [PATCH 2/2] drm/i915: Simplify ilk-ivb underrun suppression Ville Syrjala
                   ` (4 more replies)
  0 siblings, 5 replies; 15+ messages in thread
From: Ville Syrjala @ 2018-05-24 19:04 UTC (permalink / raw)
  To: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

My ILK seems to generate a spurious PCH underrun with most interlaced
HDMI modes. Add a second vblank wait to avoid it.

We have seen some spurious PCH underruns still in CI as well, some
of which seem to be progressive DP. The logs also point towards some
spurious underrins with progressive HDMI on SNB. While I don't have
a solid explanation for those let's try to kill all the birds with one
stone and always do the double wait.

Buzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106387
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_display.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 7604fbda0607..b5fa4943372a 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -5528,9 +5528,16 @@ static void ironlake_crtc_enable(struct intel_crtc_state *pipe_config,
 	if (HAS_PCH_CPT(dev_priv))
 		cpt_verify_modeset(dev, intel_crtc->pipe);
 
-	/* Must wait for vblank to avoid spurious PCH FIFO underruns */
-	if (intel_crtc->config->has_pch_encoder)
+	/*
+	 * Must wait for vblank to avoid spurious PCH FIFO underruns.
+	 * And a second vblank wait is needed at least on ILK with
+	 * some interlaced HDMI modes. Let's do the double wait always
+	 * in case there are more corner cases we don't know about.
+	 */
+	if (intel_crtc->config->has_pch_encoder) {
+		intel_wait_for_vblank(dev_priv, pipe);
 		intel_wait_for_vblank(dev_priv, pipe);
+	}
 	intel_set_cpu_fifo_underrun_reporting(dev_priv, pipe, true);
 	intel_set_pch_fifo_underrun_reporting(dev_priv, pipe, true);
 }
-- 
2.16.1

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

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

end of thread, other threads:[~2018-05-25 19:23 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-24 19:04 [PATCH 1/2] drm/i915: Try to suppress more spurious PCH underruns on ILK-IVB Ville Syrjala
2018-05-24 19:04 ` [PATCH 2/2] drm/i915: Simplify ilk-ivb underrun suppression Ville Syrjala
2018-05-25 15:20   ` Chris Wilson
2018-05-25 15:43     ` Ville Syrjälä
2018-05-25 15:55       ` Chris Wilson
2018-05-25 19:23         ` Ville Syrjälä
2018-05-24 19:50 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: Try to suppress more spurious PCH underruns on ILK-IVB Patchwork
2018-05-24 20:14 ` [PATCH 1/2] " Chris Wilson
2018-05-24 20:15   ` Chris Wilson
2018-05-24 20:31     ` Ville Syrjälä
2018-05-24 21:19 ` Chris Wilson
2018-05-25 15:02   ` Ville Syrjälä
2018-05-25 15:19     ` Jani Nikula
2018-05-25 15:49       ` Ville Syrjälä
2018-05-25  2:00 ` ✓ Fi.CI.IGT: success for series starting with [1/2] " Patchwork

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.