[Intel-gfx] [PATCH 00/22] LMEM basics
Matthew Auld
matthew.auld at intel.com
Fri Sep 27 17:33:47 UTC 2019
The basic LMEM bits, minus the uAPI, pruning, etc. The goal is to support
basic LMEM object creation within the kernel. From there we can start with the
dumb buffer support, and then the other display related bits.
We still have a few patches that deal with lack of MAPPABLE_APERTURE support,
though we can probably split that into its own series.
Patches 1-2 are just noise.
Patches 3-6 are the basic intel_memory_region bits + basic mock_selftests.
Patches 7-11 are the basic LMEM region bits + basic live_selftests.
Patches 12-14 try to turn stolen + shmem into intel_region_regions.
Patches 15-21 implement the !MAPPABLE_APERTURE bits.
The fake LMEM patch allows us to run the live_selftests with LMEM enabled and
!HAS_MAPPABLE_APERTURE in CI.
Abdiel Janulgue (4):
drm/i915: Add memory region information to device_info
drm/i915: setup io-mapping for LMEM
drm/i915/lmem: support kernel mapping
drm/i915: enumerate and init each supported region
CQ Tang (1):
drm/i915: check for missing aperture in GTT pread/pwrite paths
Daniele Ceraolo Spurio (4):
drm/i915: define HAS_MAPPABLE_APERTURE
drm/i915: do not map aperture if it is not available.
drm/i915: set num_fence_regs to 0 if there is no aperture
drm/i915: error capture with no ggtt slot
Matthew Auld (12):
drm/i915: check for kernel_context
drm/i915: simplify i915_gem_init_early
drm/i915: introduce intel_memory_region
drm/i915/region: support continuous allocations
drm/i915/region: support volatile objects
drm/i915: support creating LMEM objects
drm/i915/selftests: add write-dword test for LMEM
drm/i915/selftest: extend coverage to include LMEM huge-pages
drm/i915: treat shmem as a region
drm/i915: treat stolen as a region
drm/i915/selftests: check for missing aperture
HAX drm/i915: add the fake lmem region
Michal Wajdeczko (1):
drm/i915: Don't try to place HWS in non-existing mappable region
arch/x86/kernel/early-quirks.c | 26 +
drivers/gpu/drm/i915/Makefile | 4 +
drivers/gpu/drm/i915/gem/i915_gem_internal.c | 21 +-
drivers/gpu/drm/i915/gem/i915_gem_lmem.c | 70 +++
drivers/gpu/drm/i915/gem/i915_gem_lmem.h | 31 +
drivers/gpu/drm/i915/gem/i915_gem_object.h | 12 +
.../gpu/drm/i915/gem/i915_gem_object_types.h | 23 +-
drivers/gpu/drm/i915/gem/i915_gem_pages.c | 26 +-
drivers/gpu/drm/i915/gem/i915_gem_phys.c | 5 +-
drivers/gpu/drm/i915/gem/i915_gem_region.c | 166 +++++
drivers/gpu/drm/i915/gem/i915_gem_region.h | 29 +
drivers/gpu/drm/i915/gem/i915_gem_shmem.c | 71 ++-
drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 71 ++-
drivers/gpu/drm/i915/gem/i915_gem_stolen.h | 3 +-
.../drm/i915/gem/selftests/huge_gem_object.c | 4 +-
.../gpu/drm/i915/gem/selftests/huge_pages.c | 212 ++++++-
.../i915/gem/selftests/i915_gem_coherency.c | 5 +-
.../drm/i915/gem/selftests/i915_gem_mman.c | 6 +
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 9 +-
drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 14 +-
drivers/gpu/drm/i915/i915_drv.c | 13 +-
drivers/gpu/drm/i915/i915_drv.h | 17 +-
drivers/gpu/drm/i915/i915_gem.c | 19 +-
drivers/gpu/drm/i915/i915_gem_fence_reg.c | 6 +-
drivers/gpu/drm/i915/i915_gem_gtt.c | 119 +++-
drivers/gpu/drm/i915/i915_gpu_error.c | 65 +-
drivers/gpu/drm/i915/i915_pci.c | 29 +-
drivers/gpu/drm/i915/intel_device_info.h | 2 +
drivers/gpu/drm/i915/intel_memory_region.c | 192 ++++++
drivers/gpu/drm/i915/intel_memory_region.h | 119 ++++
drivers/gpu/drm/i915/intel_region_lmem.c | 157 +++++
drivers/gpu/drm/i915/intel_region_lmem.h | 16 +
drivers/gpu/drm/i915/selftests/i915_gem.c | 3 +
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 8 +-
.../drm/i915/selftests/i915_live_selftests.h | 1 +
.../drm/i915/selftests/i915_mock_selftests.h | 1 +
.../drm/i915/selftests/intel_memory_region.c | 587 ++++++++++++++++++
.../gpu/drm/i915/selftests/mock_gem_device.c | 9 +-
drivers/gpu/drm/i915/selftests/mock_region.c | 59 ++
drivers/gpu/drm/i915/selftests/mock_region.h | 16 +
include/drm/i915_drm.h | 3 +
41 files changed, 2115 insertions(+), 134 deletions(-)
create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_lmem.c
create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_lmem.h
create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_region.c
create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_region.h
create mode 100644 drivers/gpu/drm/i915/intel_memory_region.c
create mode 100644 drivers/gpu/drm/i915/intel_memory_region.h
create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.c
create mode 100644 drivers/gpu/drm/i915/intel_region_lmem.h
create mode 100644 drivers/gpu/drm/i915/selftests/intel_memory_region.c
create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.c
create mode 100644 drivers/gpu/drm/i915/selftests/mock_region.h
--
2.20.1
More information about the Intel-gfx
mailing list