[Intel-gfx] [PATCH 3/3] drm/i915: Use PIPE_CONTROL for flushing on gen6+.

Eric Anholt eric at anholt.net
Thu Oct 6 02:59:31 CEST 2011


On Wed, 5 Oct 2011 15:57:13 -0700, Ben Widawsky <ben at bwidawsk.net> wrote:
> I think we also want a TLB invalidate here, bit 18.  This requires another
> workaround before issuing this flush: We need 2 Store Data Commands (such as
> MI_STORE_DATA_IMM or MI_STORE_DATA_INDEX) before sending PIPE_CONTROL w/ stall
> (20) and TLB inv bit (18) set

From the docs for GFX_MODE:

    "This field controls the invalidation if the TLB cache inside the
     hardware. When enabled this bit limits the invalidation of the TLB
     only to batch buffer boundaries or to pipe_control commands which
     have the TLB invalidation bit set. If disabled, the TLB caches are
     flushed for every full flush of the pipeline"

We're already getting TLB invalidate at batchbuffer boundaries
(actually, even more: every pipeline stall, since that bit is 0 on my
hardware).  What would we need this new flush for?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20111005/af16a875/attachment.sig>


More information about the Intel-gfx mailing list