[Intel-gfx] [RFC 00/60] DG1 LMEM enabling
Dave Airlie
airlied at gmail.com
Tue Aug 11 03:23:14 UTC 2020
Hi Matthew,
do you have a rebase of these or a git tree with them, once I hit the
PPGTT support applying started to get messy.
Dave.
On Fri, 10 Jul 2020 at 21:58, Matthew Auld <matthew.auld at intel.com> wrote:
>
> This is Lucas' DG1 enabling series[1], plus some of the DG1 specific enablers
> for supporting LMEM on top, including some bits of new uAPI.
>
> Posting this series as RFC to get feedback while we continue to work on adapting
> the code to use DMA reservation incrementally. This is currently WIP[2][3].
>
> In terms of new uAPI we have gem_create_ext, which offers extensions support for
> gem_create, this includes giving userspace the ability to optionally provide a
> priority list of potential placements for the object. The other bit of new uAPI
> is the query interface for memory regions, which describes the supported memory
> regions for the device. What this reports can then be fed into gem_create_ext to
> specify where an object might reside, like device local memory.
>
> [1] https://patchwork.freedesktop.org/series/77496/
> [2] https://patchwork.freedesktop.org/series/79091/
> [3] https://patchwork.freedesktop.org/series/79129/
>
> Abdiel Janulgue (5):
> drm/i915/dg1: add initial DG-1 definitions
> drm/i915/dg1: Add DG1 PCI IDs
> drm/i915/query: Expose memory regions through the query uAPI
> drm/i915: Provide a way to disable PCIe relaxed write ordering
> drm/i915: Reintroduce mem->reserved
>
> Aditya Swarup (4):
> drm/i915/dg1: Add DPLL macros for DG1
> drm/i915/dg1: Add and setup DPLLs for DG1
> drm/i915/dg1: Enable DPLL for DG1
> drm/i915/dg1: Enable first 2 ports for DG1
>
> Animesh Manna (2):
> drm/i915/lmem: reset the lmem buffer created by fbdev
> drm/i915/dsb: Enable lmem for dsb
>
> Anshuman Gupta (1):
> drm/i915/dg1: DG1 does not support DC6
>
> Anusha Srivatsa (2):
> drm/i915/dg1: Remove SHPD_FILTER_CNT register programming
> drm/i915/lmem: Bypass aperture when lmem is available
>
> CQ Tang (5):
> drm/i915: setup GPU device lmem region
> drm/i915: Fix object page offset within a region
> drm/i915: add i915_gem_object_is_devmem() function
> drm/i915: finish memory region support for stolen objects.
> drm/i915: Create stolen memory region from local memory
>
> Clinton A Taylor (1):
> drm/i915/dg1: invert HPD pins
>
> Daniele Ceraolo Spurio (2):
> drm/i915/guc: put all guc objects in lmem when available
> drm/i915: defer pd lmem block put to worker
>
> Imre Deak (1):
> drm/i915/dg1: Reserve first 1MB of local memory
>
> Lucas De Marchi (7):
> drm/i915/dg1: add support for the master unit interrupt
> drm/i915/dg1: Add fake PCH
> drm/i915/dg1: Define MOCS table for DG1
> drm/i915/dg1: add hpd interrupt handling
> drm/i915/dg1: gmbus pin mapping
> drm/i915/dg1: map/unmap pll clocks
> drm/i915/dg1: enable PORT C/D aka D/E
>
> Matt Atwood (1):
> drm/i915/dg1: Load DMC
>
> Matt Roper (7):
> drm/i915/dg1: Initialize RAWCLK properly
> drm/i915/dg1: Wait for pcode/uncore handshake at startup
> drm/i915/dg1: Don't program PHY_MISC for PHY-C and PHY-D
> drm/i915/dg1: Update comp master/slave relationships for PHYs
> drm/i915/dg1: Update voltage swing tables for DP
> drm/i915/dg1: provide port/phy mapping for vbt
> drm/i915/rkl: Add initial workarounds
>
> Matthew Auld (11):
> drm/i915/lmem: support pread
> drm/i915/lmem: support pwrite
> drm/i915: introduce kernel blitter_context
> drm/i915/uapi: introduce drm_i915_gem_create_ext
> drm/i915: setup the LMEM region
> drm/i915: drop fake LMEM
> drm/i915: PPGTT support
> drm/i915: support GGTT LMEM entries
> drm/i915: allocate context from LMEM
> drm/i915: move engine scratch to LMEM
> drm/i915/lmem: support optional CPU clearing for special internal use
>
> Michael J. Ruhl (1):
> drm/i915/dg1: Introduce dmabuf mmap to LMEM
>
> Michel Thierry (3):
> drm/i915/dgfx: define llc and snooping behaviour
> drm/i915/lmem: allocate cmd ring in lmem
> drm/i915/lmem: allocate HWSP in lmem
>
> Stuart Summers (2):
> drm/i915: Add has_master_unit_irq flag
> drm/i915/dg1: Add initial DG1 workarounds
>
> Uma Shankar (1):
> drm/i915/dg1: Add DG1 power wells
>
> Venkata Sandeep Dhanalakota (2):
> drm/i915/dg1: Increase mmio size to 4MB
> drm/i915/lmem: Limit block size to 4G
>
> Wen, Kui (1):
> drm/i915/lmem: Do not check r->sgt.pfn for NULL
>
> Zbigniew Kempczyński (1):
> drm/i915: Distinction of memory regions
>
> drivers/gpu/drm/i915/Kconfig.debug | 11 +
> drivers/gpu/drm/i915/Makefile | 1 +
> drivers/gpu/drm/i915/display/intel_bios.c | 12 +-
> drivers/gpu/drm/i915/display/intel_cdclk.c | 16 +-
> .../gpu/drm/i915/display/intel_combo_phy.c | 7 +-
> drivers/gpu/drm/i915/display/intel_csr.c | 19 +-
> drivers/gpu/drm/i915/display/intel_ddi.c | 126 +++++-
> drivers/gpu/drm/i915/display/intel_display.c | 50 ++-
> .../drm/i915/display/intel_display_power.c | 211 +++++++++-
> drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 71 +++-
> drivers/gpu/drm/i915/display/intel_dpll_mgr.h | 17 +
> drivers/gpu/drm/i915/display/intel_dsb.c | 7 +-
> drivers/gpu/drm/i915/display/intel_fbc.c | 20 +-
> drivers/gpu/drm/i915/display/intel_fbdev.c | 25 +-
> drivers/gpu/drm/i915/display/intel_gmbus.c | 15 +-
> drivers/gpu/drm/i915/display/intel_hdmi.c | 9 +-
> drivers/gpu/drm/i915/display/intel_hotplug.c | 3 +-
> drivers/gpu/drm/i915/display/intel_sprite.c | 5 +-
> drivers/gpu/drm/i915/gem/i915_gem_create.c | 379 ++++++++++++++++++
> drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c | 58 ++-
> drivers/gpu/drm/i915/gem/i915_gem_lmem.c | 250 +++++++++++-
> drivers/gpu/drm/i915/gem/i915_gem_lmem.h | 22 +
> drivers/gpu/drm/i915/gem/i915_gem_mman.c | 103 ++---
> drivers/gpu/drm/i915/gem/i915_gem_mman.h | 8 +
> drivers/gpu/drm/i915/gem/i915_gem_object.c | 2 +
> .../gpu/drm/i915/gem/i915_gem_object_types.h | 19 +-
> drivers/gpu/drm/i915/gem/i915_gem_pages.c | 14 +-
> drivers/gpu/drm/i915/gem/i915_gem_region.c | 24 ++
> drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 241 +++++++----
> drivers/gpu/drm/i915/gem/i915_gem_stolen.h | 10 +-
> .../drm/i915/gem/selftests/i915_gem_mman.c | 12 +-
> drivers/gpu/drm/i915/gt/gen6_ppgtt.c | 2 +
> drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 83 +++-
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 40 +-
> drivers/gpu/drm/i915/gt/intel_engine_types.h | 1 +
> drivers/gpu/drm/i915/gt/intel_ggtt.c | 24 +-
> drivers/gpu/drm/i915/gt/intel_gt.c | 14 +-
> drivers/gpu/drm/i915/gt/intel_gtt.c | 74 +++-
> drivers/gpu/drm/i915/gt/intel_gtt.h | 11 +-
> drivers/gpu/drm/i915/gt/intel_lrc.c | 31 +-
> drivers/gpu/drm/i915/gt/intel_mocs.c | 39 +-
> drivers/gpu/drm/i915/gt/intel_ppgtt.c | 10 +-
> drivers/gpu/drm/i915/gt/intel_ring.c | 15 +-
> drivers/gpu/drm/i915/gt/intel_timeline.c | 8 +-
> drivers/gpu/drm/i915/gt/intel_workarounds.c | 159 ++++++--
> drivers/gpu/drm/i915/gt/uc/intel_guc.c | 9 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_fw.c | 11 +-
> drivers/gpu/drm/i915/gt/uc/intel_huc.c | 14 +-
> drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 35 +-
> drivers/gpu/drm/i915/i915_buddy.h | 10 +
> drivers/gpu/drm/i915/i915_debugfs.c | 4 +
> drivers/gpu/drm/i915/i915_drv.c | 22 +-
> drivers/gpu/drm/i915/i915_drv.h | 15 +-
> drivers/gpu/drm/i915/i915_gem.c | 109 +----
> drivers/gpu/drm/i915/i915_gem_gtt.c | 2 +
> drivers/gpu/drm/i915/i915_gpu_error.c | 4 +-
> drivers/gpu/drm/i915/i915_irq.c | 120 +++++-
> drivers/gpu/drm/i915/i915_mm.c | 2 +-
> drivers/gpu/drm/i915/i915_params.c | 5 -
> drivers/gpu/drm/i915/i915_params.h | 1 -
> drivers/gpu/drm/i915/i915_pci.c | 18 +-
> drivers/gpu/drm/i915/i915_query.c | 62 +++
> drivers/gpu/drm/i915/i915_reg.h | 71 +++-
> drivers/gpu/drm/i915/i915_vma.c | 19 +-
> drivers/gpu/drm/i915/intel_device_info.c | 1 +
> drivers/gpu/drm/i915/intel_device_info.h | 2 +
> drivers/gpu/drm/i915/intel_memory_region.c | 119 +++++-
> drivers/gpu/drm/i915/intel_memory_region.h | 55 ++-
> drivers/gpu/drm/i915/intel_pch.c | 6 +
> drivers/gpu/drm/i915/intel_pch.h | 4 +
> drivers/gpu/drm/i915/intel_pm.c | 17 +-
> drivers/gpu/drm/i915/intel_region_lmem.c | 164 ++++----
> drivers/gpu/drm/i915/intel_region_lmem.h | 3 +-
> drivers/gpu/drm/i915/intel_sideband.c | 15 +
> drivers/gpu/drm/i915/intel_sideband.h | 2 +
> drivers/gpu/drm/i915/intel_uncore.c | 4 +
> .../drm/i915/selftests/intel_memory_region.c | 172 ++++++++
> .../gpu/drm/i915/selftests/mock_gem_device.c | 3 +-
> include/drm/i915_pciids.h | 4 +
> include/uapi/drm/i915_drm.h | 118 ++++++
> 80 files changed, 2902 insertions(+), 598 deletions(-)
> create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_create.c
>
> --
> 2.26.2
>
More information about the Intel-gfx
mailing list