drm/i915: do not wait for vblank when crtc is off
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Mon, 1 Jun 2015 10:49:55 +0000 (12:49 +0200)
committerJani Nikula <jani.nikula@intel.com>
Fri, 12 Jun 2015 10:19:32 +0000 (13:19 +0300)
This can happen when turning off a sprite plane. Because the crtc state
is not yet always swapped correctly and transitional helpers are used
the crtc state cannot be relied on.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/intel_display.c

index 91a0f7ca7ed2762be624b97b00e16ffc5ea495c9..e0edff9d034db7e32a8eebd8cea233fba8e3ba22 100644 (file)
@@ -13768,7 +13768,7 @@ static void intel_finish_crtc_commit(struct drm_crtc *crtc)
 
        intel_runtime_pm_put(dev_priv);
 
-       if (intel_crtc->atomic.wait_vblank)
+       if (intel_crtc->atomic.wait_vblank && intel_crtc->active)
                intel_wait_for_vblank(dev, intel_crtc->pipe);
 
        intel_frontbuffer_flip(dev, intel_crtc->atomic.fb_bits);