Skip to content

Commit

Permalink
drm/i915: Kill vblank waits after pipe enable on gmch platforms
Browse files Browse the repository at this point in the history
The pipe might not start to actually run until the port has been enabled
(depends on the platform and port type). So don't try to wait for vblank
after we enabled the pipe but haven't yet enabled the port.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
References: https://bugs.freedesktop.org/show_bug.cgi?id=77297
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
  • Loading branch information
Ville Syrjälä authored and Daniel Vetter committed May 13, 2014
1 parent 9ab0460 commit 56ef52c
Showing 1 changed file with 0 additions and 4 deletions.
4 changes: 0 additions & 4 deletions drivers/gpu/drm/i915/intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -4500,7 +4500,6 @@ static void valleyview_modeset_global_resources(struct drm_device *dev)
static void valleyview_crtc_enable(struct drm_crtc *crtc)
{
struct drm_device *dev = crtc->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
struct intel_encoder *encoder;
int pipe = intel_crtc->pipe;
Expand Down Expand Up @@ -4536,7 +4535,6 @@ static void valleyview_crtc_enable(struct drm_crtc *crtc)

intel_update_watermarks(crtc);
intel_enable_pipe(intel_crtc);
intel_wait_for_vblank(dev_priv->dev, pipe);
intel_set_cpu_fifo_underrun_reporting(dev, pipe, true);

for_each_encoder_on_crtc(dev, crtc, encoder)
Expand All @@ -4548,7 +4546,6 @@ static void valleyview_crtc_enable(struct drm_crtc *crtc)
static void i9xx_crtc_enable(struct drm_crtc *crtc)
{
struct drm_device *dev = crtc->dev;
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
struct intel_encoder *encoder;
int pipe = intel_crtc->pipe;
Expand All @@ -4572,7 +4569,6 @@ static void i9xx_crtc_enable(struct drm_crtc *crtc)

intel_update_watermarks(crtc);
intel_enable_pipe(intel_crtc);
intel_wait_for_vblank(dev_priv->dev, pipe);
intel_set_cpu_fifo_underrun_reporting(dev, pipe, true);

for_each_encoder_on_crtc(dev, crtc, encoder)
Expand Down

0 comments on commit 56ef52c

Please sign in to comment.