[Intel-gfx] [PATCH] drm/i915: Enable explicit TLB invalidation control

Chris Wilson chris at chris-wilson.co.uk
Tue Jan 22 02:04:35 CET 2013


On Mon, Jan 21, 2013 at 11:38:06PM +0100, Daniel Vetter wrote:
> On Sun, Jan 20, 2013 at 05:08:23PM +0000, Chris Wilson wrote:
> > During the initial bringup of IVB, we set the invalidation control to
> > the pre-IVB default of always invalidating TLBs on every flush:
> > 
> > commit b095cd0a0ccdbc00c9fd99d90b22f8563687971f
> > Author: Jesse Barnes <jbarnes at virtuousgeek.org>
> > Date:   Fri Aug 12 15:28:32 2011 -0700
> > 
> >     drm/i915: set GFX_MODE to pre-Ivybridge default value even on Ivybridge
> > 
> > We now have the required invalidates in place, so enable the
> > optimisation and avoid the unnecessary flushes when we use pipe controls
> > inside batches.
> > 
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> 
> While I try to figure out how to merge this into dinq without causing too
> many conflicts with the patches in -fixes two bikesheds:
> - can we have a less confusing #define for this - the code reads as if we
>   enable the always invalidate mode now ...

Sure, but you get more conflicts that way...
Taking the name from the docs, it should be GFX_TLB_INVALIDATE_MODE.

> - does this blow up on gen6 (docs say no), or should we try?

It is a required w/a on gen6 for the hw to modify the scanlines register,
hence the previous patch.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list