drm/i915: Limit FBC flush to post batch flush

Don't issue the FBC nuke/cache clean command when invalidate_domains!=0.
That would indicate that we're not being called for the post-batch
flush.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Ville Syrjälä 2013-11-06 23:02:19 +02:00 committed by Daniel Vetter
parent f671d117bc
commit 9688ecadd2
1 changed files with 2 additions and 2 deletions

View File

@ -354,7 +354,7 @@ gen7_render_ring_flush(struct intel_ring_buffer *ring,
intel_ring_emit(ring, 0); intel_ring_emit(ring, 0);
intel_ring_advance(ring); intel_ring_advance(ring);
if (flush_domains) if (!invalidate_domains && flush_domains)
return gen7_ring_fbc_flush(ring, FBC_REND_NUKE); return gen7_ring_fbc_flush(ring, FBC_REND_NUKE);
return 0; return 0;
@ -1838,7 +1838,7 @@ static int gen6_ring_flush(struct intel_ring_buffer *ring,
} }
intel_ring_advance(ring); intel_ring_advance(ring);
if (IS_GEN7(dev) && flush) if (IS_GEN7(dev) && !invalidate && flush)
return gen7_ring_fbc_flush(ring, FBC_REND_CACHE_CLEAN); return gen7_ring_fbc_flush(ring, FBC_REND_CACHE_CLEAN);
return 0; return 0;