drm/i915: Use mmio flips to change tiling mode on Baytrail
For whatever reason, MI_DISPLAY_FLIP fails to change tiling mode on Baytrail, so just use CPU driven mmio flips instead. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76176 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
2a92d5bca1
commit
8e09bf837f
@ -9435,6 +9435,9 @@ static bool use_mmio_flip(struct intel_engine_cs *ring,
|
||||
* So using MMIO flips there would disrupt this mechanism.
|
||||
*/
|
||||
|
||||
if (ring == NULL)
|
||||
return true;
|
||||
|
||||
if (INTEL_INFO(ring->dev)->gen < 5)
|
||||
return false;
|
||||
|
||||
@ -9658,6 +9661,9 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
|
||||
|
||||
if (IS_VALLEYVIEW(dev)) {
|
||||
ring = &dev_priv->ring[BCS];
|
||||
if (obj->tiling_mode != work->old_fb_obj->tiling_mode)
|
||||
/* vlv: DISPLAY_FLIP fails to change tiling */
|
||||
ring = NULL;
|
||||
} else if (IS_IVYBRIDGE(dev)) {
|
||||
ring = &dev_priv->ring[BCS];
|
||||
} else if (INTEL_INFO(dev)->gen >= 7) {
|
||||
|
Loading…
Reference in New Issue
Block a user