mutex_unlock(&dev->struct_mutex);
}
+ if (crtc->atomic.disable_ips)
+ hsw_disable_ips(crtc);
+
if (atomic->pre_disable_primary)
intel_pre_disable_primary(&crtc->base);
}
intel_crtc->atomic.pre_disable_primary = turn_off;
intel_crtc->atomic.post_enable_primary = turn_on;
- if (turn_off)
+ if (turn_off) {
+ /*
+ * FIXME: Actually if we will still have any other
+ * plane enabled on the pipe we could let IPS enabled
+ * still, but for now lets consider that when we make
+ * primary invisible by setting DSPCNTR to 0 on
+ * update_primary_plane function IPS needs to be
+ * disable.
+ */
+ intel_crtc->atomic.disable_ips = true;
+
intel_crtc->atomic.disable_fbc = true;
+ }
/*
* FBC does not work on some platforms for rotated