[Intel-gfx] [PULL] drm-intel-gt-next

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Fri May 28 07:27:08 UTC 2021


Quoting Joonas Lahtinen (2021-05-28 10:25:57)
> Hi Dave & Daniel,
> 
> Here's drm-intel-gt-next pull request.
> 
> Most notably it has the reworked DG1 uAPI (behind CONFIG_BROKEN)
> as requested. Important fix for Gitlab issues #3293 and #3450 and
> one another kernel crash. Adds missing workarounds for Gen11 and
> Gen12. Hiding of modparams for compiled-out features. Conversion
> to use trylock shrinking for BSW VT-d and BXT.
> 
> Then there are the uAPI kerneldoc improvements as part of the DG1
> uAPI rework. Usual amount smaller fixes, code refactoring and
> cleanups as prep for upcoming patches.

And includes tag 'topic/intel-gen-to-ver-2021-04-19' (but that is
already merged to drm-next).

Regards, Joonas

> Regards, Joonas
> 
> ***
> 
> drm-intel-gt-next-2021-05-28:
> 
> UAPI Changes:
> - Add reworked uAPI for DG1 behind CONFIG_BROKEN (Matt A, Abdiel)
> 
> Driver Changes:
> 
> - Fix for Gitlab issues #3293 and #3450:
>   Avoid kernel crash on older L-shape memory machines
> 
> - Hide modparams for compiled-out features (Tvrtko)
> - Add Wa_14010733141 (VDBox SFC reset) for Gen11+ (Aditya)
> - Fix crash in auto_retire active retire callback due to
>   misalignment (Stephane)
> - Use trylock in shrinker for GGTT on BSW VT-d and BXT (Maarten)
> - Fix overlay active retire callback alignment (Tvrtko)
> - Eliminate need to align active retire callbacks (Matt A, Ville,
>   Daniel)
> - Program FF_MODE2 tuning value for all Gen12 platforms (Caz)
> - Add Wa_14011060649 for TGL,RKL,DG1 and ADLS (Swathi)
> - Create stolen memory region from local memory on DG1 (CQ)
> - Place PD in LMEM on dGFX (Matt A)
> - Use WC when default state object is allocated in LMEM (Venkata)
> - Determine the coherent map type based on object location (Venkata)
> - Use lmem physical addresses for fb_mmap() on discrete (Mohammed)
> - Bypass aperture on fbdev when LMEM is available (Anusha)
> - Return error value when displayable BO not in LMEM for dGFX (Mohammed)
> - Do release kernel context if breadcrumb measure fails (Janusz)
> - Apply Wa_22010271021 for all Gen11 platforms (Caz)
> - Fix unlikely ref count race in arming the watchdog timer (Tvrtko)
> - Check actual RC6 enable status in PMU (Tvrtko)
> - Fix a double free in gen8_preallocate_top_level_pdp (Lv)
> - Remove erroneous i915_is_ggtt check for
>   I915_GEM_OBJECT_UNBIND_VM_TRYLOCK (Maarten)
> 
> - Convert uAPI headers to real kerneldoc (Matt A)
> - Clean up kerneldoc warnings headers (Matt A, Maarten)
> - Fail driver if LMEM training failed (Matt R)
> - Avoid div-by-zero on Gen2 (Ville)
> - Read C0DRB3/C1DRB3 as 16 bits again and add _BW suffix (Ville)
> - Remove reference to struct drm_device.pdev (Thomas)
> - Increase separation between GuC and execlists code (Chris, Matt B)
> 
> - Use might_alloc() (Bernard)
> - Split DGFX_FEATURES from GEN12_FEATURES (Lucas)
> - Deduplicate Wa_22010271021 programming on (Jose)
> - Drop duplicate WaDisable4x2SubspanOptimization:hsw (Tvrtko)
> - Selftest improvements (Chris, Hsin-Yi, Tvrtko)
> - Shuffle around init_memory_region for stolen (Matt)
> - Typo fixes (wengjianfeng)
> 
> The following changes since commit 425390c5dce6da76578389629d19517fcd79c959:
> 
>   drm/i915: split dgfx features from gen 12 (2021-04-14 13:05:06 +0300)
> 
> are available in the Git repository at:
> 
>   git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-gt-next-2021-05-28
> 
> for you to fetch changes up to 5b26d57fdb499c2363f3d895ef008e73ec02eb9b:
> 
>   drm/i915: Add Wa_14010733141 (2021-05-27 11:05:09 -0700)
> 
> ----------------------------------------------------------------
> UAPI Changes:
> - Add reworked uAPI for DG1 behind CONFIG_BROKEN (Matt A, Abdiel)
> 
> Driver Changes:
> 
> - Fix for Gitlab issues #3293 and #3450:
>   Avoid kernel crash on older L-shape memory machines
> 
> - Add Wa_14010733141 (VDBox SFC reset) for Gen11+ (Aditya)
> - Fix crash in auto_retire active retire callback due to
>   misalignment (Stephane)
> - Fix overlay active retire callback alignment (Tvrtko)
> - Eliminate need to align active retire callbacks (Matt A, Ville,
>   Daniel)
> - Program FF_MODE2 tuning value for all Gen12 platforms (Caz)
> - Add Wa_14011060649 for TGL,RKL,DG1 and ADLS (Swathi)
> - Create stolen memory region from local memory on DG1 (CQ)
> - Place PD in LMEM on dGFX (Matt A)
> - Use WC when default state object is allocated in LMEM (Venkata)
> - Determine the coherent map type based on object location (Venkata)
> - Use lmem physical addresses for fb_mmap() on discrete (Mohammed)
> - Bypass aperture on fbdev when LMEM is available (Anusha)
> - Return error value when displayable BO not in LMEM for dGFX (Mohammed)
> - Do release kernel context if breadcrumb measure fails (Janusz)
> - Hide modparams for compiled-out features (Tvrtko)
> - Apply Wa_22010271021 for all Gen11 platforms (Caz)
> - Fix unlikely ref count race in arming the watchdog timer (Tvrtko)
> - Check actual RC6 enable status in PMU (Tvrtko)
> - Fix a double free in gen8_preallocate_top_level_pdp (Lv)
> - Use trylock in shrinker for GGTT on BSW VT-d and BXT (Maarten)
> - Remove erroneous i915_is_ggtt check for
>   I915_GEM_OBJECT_UNBIND_VM_TRYLOCK (Maarten)
> 
> - Convert uAPI headers to real kerneldoc (Matt A)
> - Clean up kerneldoc warnings headers (Matt A, Maarten)
> - Fail driver if LMEM training failed (Matt R)
> - Avoid div-by-zero on Gen2 (Ville)
> - Read C0DRB3/C1DRB3 as 16 bits again and add _BW suffix (Ville)
> - Remove reference to struct drm_device.pdev (Thomas)
> - Increase separation between GuC and execlists code (Chris, Matt B)
> 
> - Use might_alloc() (Bernard)
> - Split DGFX_FEATURES from GEN12_FEATURES (Lucas)
> - Deduplicate Wa_22010271021 programming on (Jose)
> - Drop duplicate WaDisable4x2SubspanOptimization:hsw (Tvrtko)
> - Selftest improvements (Chris, Hsin-Yi, Tvrtko)
> - Shuffle around init_memory_region for stolen (Matt)
> - Typo fixes (wengjianfeng)
> 
> ----------------------------------------------------------------
> Abdiel Janulgue (1):
>       drm/i915/query: Expose memory regions through the query uAPI
> 
> Aditya Swarup (1):
>       drm/i915: Add Wa_14010733141
> 
> Anusha Srivatsa (1):
>       drm/i915/lmem: Bypass aperture when lmem is available
> 
> Bernard Zhao (1):
>       drm/i915: Use might_alloc()
> 
> CQ Tang (2):
>       drm/i915: Create stolen memory region from local memory
>       drm/i915/stolen: enforce the min_page_size contract
> 
> Caz Yokoyama (2):
>       drm/i915/gen12: Add recommended hardware tuning value
>       drm/i915/icl: add Wa_22010271021 for all gen11
> 
> Chris Wilson (6):
>       drm/i915/selftests: Skip aperture remapping selftest where there is no aperture
>       drm/i915/selftests: Only query RAPL for integrated power measurements
>       drm/i915/gem: Pin the L-shape quirked object as unshrinkable
>       drm/i915/gt: Move engine setup out of set_default_submission
>       drm/i915/gt: Move submission_method into intel_gt
>       drm/i915/gt: Move CS interrupt handler to the backend
> 
> Hsin-Yi Wang (1):
>       drm/i915/selftests: Rename pm_ prefixed functions names
> 
> Janusz Krzysztofik (1):
>       drm/i915/gt: Do release kernel context if breadcrumb measure fails
> 
> Joonas Lahtinen (1):
>       Merge tag 'topic/intel-gen-to-ver-2021-04-19' of git://anongit.freedesktop.org/drm/drm-intel into drm-intel-gt-next
> 
> José Roberto de Souza (1):
>       drm/i915: Move Wa_16011163337 to gen12_ctx_workarounds_init()
> 
> Lv Yunlong (1):
>       drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp
> 
> Maarten Lankhorst (4):
>       drm/i915: Fix docbook descriptions for i915_gem_shrinker
>       drm/i915: Fix docbook descriptions for i915_cmd_parser
>       drm/i915: Use trylock in shrinker for ggtt on bsw vt-d and bxt, v2.
>       drm/i915: Remove erroneous i915_is_ggtt check for I915_GEM_OBJECT_UNBIND_VM_TRYLOCK
> 
> Matt Roper (1):
>       drm/i915/lmem: Fail driver init if LMEM training failed
> 
> Matthew Auld (19):
>       drm/i915/uapi: fix kernel doc warnings
>       drm/i915/uapi: convert i915_user_extension to kernel doc
>       drm/i915/uapi: convert i915_query and friend to kernel doc
>       drm/doc: add section for driver uAPI
>       drm/i915/stolen: treat stolen local as normal local memory
>       drm/i915/stolen: actually mark as contiguous
>       drm/i915/gtt: map the PD up front
>       drm/i915/gtt/dgfx: place the PD in LMEM
>       drm/doc/rfc: i915 DG1 uAPI
>       drm/i915: mark stolen as private
>       drm/i915: rework gem_create flow for upcoming extensions
>       drm/i915/uapi: introduce drm_i915_gem_create_ext
>       drm/i915/uapi: implement object placement extension
>       drm/i915/lmem: support optional CPU clearing for special internal use
>       drm/i915/gem: clear userspace buffers for LMEM
>       drm/i915/gem: hide new uAPI behind CONFIG_BROKEN
>       drm/i915: drop the __i915_active_call pointer packing
>       drm/i915/stolen: shuffle around init_memory_region
>       drm/doc/rfc: drop the i915_gem_lmem.h header
> 
> Mohammed Khajapasha (2):
>       drm/i915/fbdev: Use lmem physical addresses for fb_mmap() on discrete
>       drm/i915: Return error value when bo not in LMEM for discrete
> 
> Stéphane Marchesin (1):
>       drm/i915: Fix crash in auto_retire
> 
> Swathi Dhanavanthri (1):
>       drm/i915: Add Wa_14011060649
> 
> Thomas Zimmermann (1):
>       drm/i915/gem: Remove reference to struct drm_device.pdev
> 
> Tvrtko Ursulin (6):
>       drm/i915: Take request reference before arming the watchdog timer
>       drm/i915/pmu: Check actual RC6 status
>       drm/i915/overlay: Fix active retire callback alignment
>       drm/i915/selftests: Fix active retire callback alignment
>       drm/i915: Drop duplicate WaDisable4x2SubspanOptimization:hsw
>       drm/i915/params: Align visibility of device level and global modparams
> 
> Venkata Ramana Nayana (1):
>       drm/i915/dg1: Fix mapping type for default state object
> 
> Venkata Sandeep Dhanalakota (1):
>       drm/i915: Update the helper to set correct mapping
> 
> Ville Syrjälä (3):
>       drm/i915: Avoid div-by-zero on gen2
>       drm/i915: Read C0DRB3/C1DRB3 as 16 bits again
>       drm/i915: Give C0DRB3/C1DRB3 a _BW suffix
> 
> wengjianfeng (1):
>       drm/i915/gt: fix typo issue
> 
>  Documentation/gpu/driver-uapi.rst                  |   8 +
>  Documentation/gpu/index.rst                        |   1 +
>  Documentation/gpu/rfc/i915_gem_lmem.rst            | 131 +++++++
>  Documentation/gpu/rfc/index.rst                    |   4 +
>  drivers/gpu/drm/i915/display/intel_display.c       |  10 +
>  drivers/gpu/drm/i915/display/intel_fbdev.c         |  51 ++-
>  drivers/gpu/drm/i915/display/intel_frontbuffer.c   |   4 +-
>  drivers/gpu/drm/i915/display/intel_overlay.c       |   5 +-
>  drivers/gpu/drm/i915/gem/i915_gem_context.c        |   3 +-
>  drivers/gpu/drm/i915/gem/i915_gem_create.c         | 345 ++++++++++++++++--
>  drivers/gpu/drm/i915/gem/i915_gem_ioctls.h         |   2 +
>  drivers/gpu/drm/i915/gem/i915_gem_lmem.c           |  20 +-
>  drivers/gpu/drm/i915/gem/i915_gem_lmem.h           |   5 +
>  drivers/gpu/drm/i915/gem/i915_gem_mman.c           |   2 +-
>  drivers/gpu/drm/i915/gem/i915_gem_object.c         |   3 +
>  drivers/gpu/drm/i915/gem/i915_gem_object_types.h   |  14 +-
>  drivers/gpu/drm/i915/gem/i915_gem_pages.c          |   2 +
>  drivers/gpu/drm/i915/gem/i915_gem_region.c         |  22 ++
>  drivers/gpu/drm/i915/gem/i915_gem_shrinker.c       |  14 +-
>  drivers/gpu/drm/i915/gem/i915_gem_stolen.c         | 159 +++++++--
>  drivers/gpu/drm/i915/gem/i915_gem_stolen.h         |   3 +-
>  .../gpu/drm/i915/gem/selftests/i915_gem_context.c  |  11 +-
>  drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c |  26 ++
>  drivers/gpu/drm/i915/gt/gen6_ppgtt.c               |  13 +-
>  drivers/gpu/drm/i915/gt/gen8_ppgtt.c               |  32 +-
>  drivers/gpu/drm/i915/gt/intel_context.c            |   3 +-
>  drivers/gpu/drm/i915/gt/intel_engine.h             |   8 +-
>  drivers/gpu/drm/i915/gt/intel_engine_cs.c          |  21 +-
>  drivers/gpu/drm/i915/gt/intel_engine_pm.c          |   2 +-
>  drivers/gpu/drm/i915/gt/intel_engine_types.h       |  14 +-
>  .../gpu/drm/i915/gt/intel_execlists_submission.c   |  95 +++--
>  .../gpu/drm/i915/gt/intel_execlists_submission.h   |   3 -
>  drivers/gpu/drm/i915/gt/intel_ggtt.c               |  10 +-
>  drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c       |   6 +-
>  drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.c     |   3 +-
>  drivers/gpu/drm/i915/gt/intel_gt_irq.c             |  82 ++---
>  drivers/gpu/drm/i915/gt/intel_gt_irq.h             |  23 ++
>  drivers/gpu/drm/i915/gt/intel_gt_types.h           |   7 +
>  drivers/gpu/drm/i915/gt/intel_gtt.c                |  91 +++--
>  drivers/gpu/drm/i915/gt/intel_gtt.h                |  12 +-
>  drivers/gpu/drm/i915/gt/intel_lrc.c                |   4 +-
>  drivers/gpu/drm/i915/gt/intel_ppgtt.c              |   7 +-
>  drivers/gpu/drm/i915/gt/intel_reset.c              | 201 +++++++----
>  drivers/gpu/drm/i915/gt/intel_ring.c               |  11 +-
>  drivers/gpu/drm/i915/gt/intel_ring_submission.c    |  12 +-
>  drivers/gpu/drm/i915/gt/intel_rps.c                |   2 +-
>  drivers/gpu/drm/i915/gt/intel_timeline.c           |   4 +-
>  drivers/gpu/drm/i915/gt/intel_workarounds.c        | 100 ++++--
>  drivers/gpu/drm/i915/gt/mock_engine.c              |   2 +-
>  drivers/gpu/drm/i915/gt/selftest_context.c         |   3 +-
>  .../gpu/drm/i915/gt/selftest_engine_heartbeat.c    |   2 +-
>  drivers/gpu/drm/i915/gt/selftest_execlists.c       |   2 +-
>  drivers/gpu/drm/i915/gt/selftest_hangcheck.c       |   4 +-
>  drivers/gpu/drm/i915/gt/selftest_lrc.c             |   4 +-
>  drivers/gpu/drm/i915/gt/selftest_rc6.c             |  32 +-
>  drivers/gpu/drm/i915/gt/selftest_ring_submission.c |   2 +-
>  drivers/gpu/drm/i915/gt/selftest_rps.c             |   6 +-
>  drivers/gpu/drm/i915/gt/shmem_utils.c              |   4 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc.c             |   4 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c  |  64 ++--
>  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h  |   1 -
>  drivers/gpu/drm/i915/gt/uc/intel_huc.c             |   4 +-
>  drivers/gpu/drm/i915/i915_active.c                 |  11 +-
>  drivers/gpu/drm/i915/i915_active.h                 |  11 +-
>  drivers/gpu/drm/i915/i915_active_types.h           |   5 -
>  drivers/gpu/drm/i915/i915_cmd_parser.c             |  18 +-
>  drivers/gpu/drm/i915/i915_debugfs.c                |   4 +-
>  drivers/gpu/drm/i915/i915_drv.c                    |   1 +
>  drivers/gpu/drm/i915/i915_drv.h                    |  29 +-
>  drivers/gpu/drm/i915/i915_gem.c                    |  25 +-
>  drivers/gpu/drm/i915/i915_irq.c                    |  10 +-
>  drivers/gpu/drm/i915/i915_params.h                 |   8 +-
>  drivers/gpu/drm/i915/i915_pci.c                    |   2 +-
>  drivers/gpu/drm/i915/i915_perf.c                   |  10 +-
>  drivers/gpu/drm/i915/i915_pmu.c                    |   4 +-
>  drivers/gpu/drm/i915/i915_query.c                  |  62 ++++
>  drivers/gpu/drm/i915/i915_reg.h                    |  17 +-
>  drivers/gpu/drm/i915/i915_request.c                |   5 +-
>  drivers/gpu/drm/i915/i915_vma.c                    |  31 +-
>  drivers/gpu/drm/i915/intel_memory_region.c         |  29 +-
>  drivers/gpu/drm/i915/intel_memory_region.h         |  18 +-
>  drivers/gpu/drm/i915/intel_uncore.c                |  12 +
>  drivers/gpu/drm/i915/selftests/i915_active.c       |   2 +-
>  drivers/gpu/drm/i915/selftests/i915_gem.c          |  20 +-
>  drivers/gpu/drm/i915/selftests/i915_gem_gtt.c      |  10 +-
>  drivers/gpu/drm/i915/selftests/i915_perf.c         |   3 +-
>  drivers/gpu/drm/i915/selftests/i915_vma.c          |   3 +
>  drivers/gpu/drm/i915/selftests/igt_spinner.c       |   4 +-
>  .../gpu/drm/i915/selftests/intel_memory_region.c   |  87 ++++-
>  drivers/gpu/drm/i915/selftests/librapl.c           |  10 +
>  drivers/gpu/drm/i915/selftests/librapl.h           |   4 +
>  include/uapi/drm/i915_drm.h                        | 393 +++++++++++++++++++--
>  92 files changed, 2018 insertions(+), 575 deletions(-)
>  create mode 100644 Documentation/gpu/driver-uapi.rst
>  create mode 100644 Documentation/gpu/rfc/i915_gem_lmem.rst


More information about the Intel-gfx mailing list