forked from Minki/linux
drm/i915: use calculated state for vblank evasion
crtc->active will be gone eventually, and this check should be just as good. 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>
This commit is contained in:
parent
3538b9dffd
commit
5c2db1882a
@ -13658,6 +13658,7 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc)
|
|||||||
struct drm_device *dev = crtc->dev;
|
struct drm_device *dev = crtc->dev;
|
||||||
struct drm_i915_private *dev_priv = dev->dev_private;
|
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||||
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
|
struct intel_crtc *intel_crtc = to_intel_crtc(crtc);
|
||||||
|
struct drm_crtc_state *crtc_state = intel_crtc->base.state;
|
||||||
struct intel_plane *intel_plane;
|
struct intel_plane *intel_plane;
|
||||||
struct drm_plane *p;
|
struct drm_plane *p;
|
||||||
unsigned fb_bits = 0;
|
unsigned fb_bits = 0;
|
||||||
@ -13701,7 +13702,7 @@ static void intel_begin_crtc_commit(struct drm_crtc *crtc)
|
|||||||
intel_runtime_pm_get(dev_priv);
|
intel_runtime_pm_get(dev_priv);
|
||||||
|
|
||||||
/* Perform vblank evasion around commit operation */
|
/* Perform vblank evasion around commit operation */
|
||||||
if (intel_crtc->active)
|
if (crtc_state->active && !needs_modeset(crtc_state))
|
||||||
intel_crtc->atomic.evade =
|
intel_crtc->atomic.evade =
|
||||||
intel_pipe_update_start(intel_crtc,
|
intel_pipe_update_start(intel_crtc,
|
||||||
&intel_crtc->atomic.start_vbl_count);
|
&intel_crtc->atomic.start_vbl_count);
|
||||||
|
Loading…
Reference in New Issue
Block a user