[PATCH 00/18] ppgtt cleanups / scratch merge (v3)

Mika Kuoppala
2015-06-25T15:35:54Z

V3 of the ppgtt cleanup series. I dropped the preallocation
of pdps as Michel has patch with updating pdps through ring LRIs
in his 48bit series.

All except 3/18 and 12/18 have Reviewed-bys.

Tomas Elf had concern with 12/18 that the gen9+ hw
cmd parser will NOOP out the commands. Even if it so,
we gain timely hangs and regonizable pattern with older gens.

-Mika

Mika Kuoppala (18):
drm/i915/gtt: Mark TLBS dirty for gen8+
drm/i915/gtt: Check va range against vm size
drm/i915/gtt: Allow >= 4GB sizes for vm.
drm/i915/gtt: Introduce i915_page_dir_dma_addr
drm/i915/gtt: Introduce struct i915_page_dma
drm/i915/gtt: Rename unmap_and_free_px to free_px
drm/i915/gtt: Remove superfluous free_pd with gen6/7
drm/i915/gtt: Introduce fill_page_dma()
drm/i915/gtt: Introduce kmap|kunmap for dma page
drm/i915/gtt: Use macros to access dma mapped pages
drm/i915/gtt: Make scratch page i915_page_dma compatible
drm/i915/gtt: Fill scratch page
drm/i915/gtt: Pin vma during virtual address allocation
drm/i915/gtt: Cleanup page directory encoding
drm/i915/gtt: Move scratch_pd and scratch_pt into vm area
drm/i915/gtt: One instance of scratch page table/directory
drm/i915/gtt: Use nonatomic bitmap ops
drm/i915/gtt: Reorder page alloc/free/init functions

drivers/char/agp/intel-gtt.c | 4 +-
drivers/gpu/drm/i915/i915_debugfs.c | 44 +--
drivers/gpu/drm/i915/i915_gem.c | 6 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 659 ++++++++++++++++++++----------------
drivers/gpu/drm/i915/i915_gem_gtt.h | 59 ++--
drivers/gpu/drm/i915/intel_lrc.c | 4 +-
include/drm/intel-gtt.h | 4 +-
7 files changed, 435 insertions(+), 345 deletions(-)