On Tue, Jan 29, 2013 at 07:42:57AM +0000, Damien Lespiau wrote: > On Thu, Jan 24, 2013 at 02:44:55PM -0800, Ben Widawsky wrote: > > From: Daniel Vetter <daniel.vetter at ffwll.ch> > > > > We have a few too many differences here, so finally take the prepared > > abstraction and run with it. A few smaller changes are required to get > > things into shape: > > > > - move i915_cache_level up since we need it in the gt funcs > > - split up i915_ggtt_clear_range and move the two functions down to > > where the relevant insert_entries functions are > > - adjustments to a few function parameter lists > > > > Now we have 2 functions which deal with the gen6+ global gtt > > (gen6_ggtt_ prefix) and 2 functions which deal with the legacy gtt > > code in the intel-gtt.c fake agp driver (i915_ggtt_ prefix). > > > > Init is still a bit a mess, but honestly I don't care about that. > > > > One thing I've thought about while deciding on the exact interfaces is > > a flag parameter for ->clear_range: We could use that to decide > > between writing invalid pte entries or scratch pte entries. In case we > > ever get around to fixing all our bugs which currently prevent us from > > filling the gtt with empty ptes for the truly unused ranges ... > > > > Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch> > > > > [bwidawsk: Moved functions to the gtt struct] > > Signed-off-by: Ben Widawsky <ben at bwidawsk.net> > > Reviewed-by: Damien Lespiau <damien.lespiau at intel.com> Merged the series into dinq, thanks for the review. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch