@@ -12246,6 +12246,8 @@ static void intel_update_crtc(struct drm_crtc *crtc,
}
if (drm_atomic_get_existing_plane_state(state, crtc->primary)) {
+ /* Display WA #1200: GLK */
+ intel_wait_for_vblank(dev_priv, intel_crtc->pipe);
intel_fbc_enable(
intel_crtc, pipe_config,
to_intel_plane_state(crtc->primary->state));
@@ -12419,6 +12421,8 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state)
intel_crtc_disable_planes(crtc, old_crtc_state->plane_mask);
dev_priv->display.crtc_disable(to_intel_crtc_state(old_crtc_state), state);
intel_crtc->active = false;
+ /* Display WA #1200: GLK */
+ intel_wait_for_vblank(dev_priv, intel_crtc->pipe);
intel_fbc_disable(intel_crtc);
intel_disable_shared_dpll(intel_crtc);