mbox series

[PULL] drm-intel-gt-next

Message ID ZRVzL02VFuwIkcGl@tursulin-desk (mailing list archive)
State New, archived
Headers show
Series [PULL] drm-intel-gt-next | expand

Pull-request

git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-gt-next-2023-09-28

Message

Tvrtko Ursulin Sept. 28, 2023, 12:36 p.m. UTC
Hi Dave, Daniel,

Here goes the first pull request for 6.7.

Nothing major in this round - a bunch of fixes, mostly relating to various
GuC and PXP features/functionalities, and a few new mostly DG2
workarounds.

Tiny bit or Meteorlake enablement and a tiny bit of selftests fixes and
even less code base tidies.

Regards,

Tvrtko

drm-intel-gt-next-2023-09-28:
Driver Changes:

Fixes/improvements/new stuff:

- Fix TLB-Invalidation seqno store [mtl] (Alan Previn)
- Force a reset on internal GuC error [guc] (John Harrison)
- Define GSC fw [gsc] (Daniele Ceraolo Spurio)
- Update workaround 14016712196 [dg2/mtl] (Tejas Upadhyay)
- Mark requests for GuC virtual engines to avoid use-after-free (Andrzej Hajda)
- Add Wa_14015150844 [dg2/mtl] (Shekhar Chauhan)
- Prevent error pointer dereference (Dan Carpenter)
- Add Wa_18022495364 [tgl,adl,rpl] (Dnyaneshwar Bhadane)
- Fix GuC PMU by moving execlist stats initialization to execlist specific setup (Umesh Nerlige Ramappa)
- Fix PXP firmware load [pxp/mtl] (Alan Previn)
- Fix execution/context state of PXP contexts (Alan Previn)
- Limit the length of an sg list to the requested length (Matthew Wilcox)
- Fix reservation address in ggtt_reserve_guc_top [guc] (Javier Pello)
- Add Wa_18028616096 [dg2] (Shekhar Chauhan)
- Get runtime pm in busyness worker only if already active [guc/pmu] (Umesh Nerlige Ramappa)
- Don't set PIPE_CONTROL_FLUSH_L3 for aux inval (Nirmoy Das)

Future platform enablement:

- Fix and consolidate some workaround checks, make others IP version based [mtl] (Matt Roper)
- Replace Meteorlake subplatforms with IP version checks (Matt Roper)
- Adding DeviceID for Arrowlake-S under MTL [mtl] (Nemesa Garg)
- Run relevant bits of debugfs drop_caches per GT (Tvrtko Ursulin)

Miscellaneous:

- Remove Wa_15010599737 [dg2] (Shekhar Chauhan)
- Align igt_spinner_create_request with hangcheck [selftests] (Jonathan Cavitt)
- Remove pre-production workarounds [dg2] (Matt Roper)
- Tidy some workaround definitions (Matt Roper)
- Wait longer for tasks in migrate selftest [gt] (Jonathan Cavitt)
- Skip WA verification for GEN7_MISCCPCTL on DG2 [gt] (Andrzej Hajda)
- Silence injected failure in the load via GSC path [huc] (Daniele Ceraolo Spurio)
- Refactor deprecated strncpy (Justin Stitt)
- Update RC6 mask for mtl_drpc [debugfs/mtl] (Badal Nilawar)
- Remove a static inline that requires including i915_drv.h [gt] (Jani Nikula)
- Remove inlines from i915_gem_execbuffer.c [gem] (Jani Nikula)
- Remove gtt_offset from stream->oa_buffer.head/.tail [perf] (Ashutosh Dixit)
- Do not disable preemption for resets (Tvrtko Ursulin)
The following changes since commit 788568fad4015406fa84fc86cefbef7c470c7c1f:

  drm/i915/guc: Fix potential null pointer deref in GuC 'steal id' test (2023-08-10 16:02:01 -0700)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-gt-next-2023-09-28

for you to fetch changes up to 03d681412b38558aefe4fb0f46e36efa94bb21ef:

  drm/i915: Don't set PIPE_CONTROL_FLUSH_L3 for aux inval (2023-09-28 11:39:30 +0200)

----------------------------------------------------------------
Driver Changes:

Fixes/improvements/new stuff:

- Fix TLB-Invalidation seqno store [mtl] (Alan Previn)
- Force a reset on internal GuC error [guc] (John Harrison)
- Define GSC fw [gsc] (Daniele Ceraolo Spurio)
- Update workaround 14016712196 [dg2/mtl] (Tejas Upadhyay)
- Mark requests for GuC virtual engines to avoid use-after-free (Andrzej Hajda)
- Add Wa_14015150844 [dg2/mtl] (Shekhar Chauhan)
- Prevent error pointer dereference (Dan Carpenter)
- Add Wa_18022495364 [tgl,adl,rpl] (Dnyaneshwar Bhadane)
- Fix GuC PMU by moving execlist stats initialization to execlist specific setup (Umesh Nerlige Ramappa)
- Fix PXP firmware load [pxp/mtl] (Alan Previn)
- Fix execution/context state of PXP contexts (Alan Previn)
- Limit the length of an sg list to the requested length (Matthew Wilcox)
- Fix reservation address in ggtt_reserve_guc_top [guc] (Javier Pello)
- Add Wa_18028616096 [dg2] (Shekhar Chauhan)
- Get runtime pm in busyness worker only if already active [guc/pmu] (Umesh Nerlige Ramappa)
- Don't set PIPE_CONTROL_FLUSH_L3 for aux inval (Nirmoy Das)

Future platform enablement:

- Fix and consolidate some workaround checks, make others IP version based [mtl] (Matt Roper)
- Replace Meteorlake subplatforms with IP version checks (Matt Roper)
- Adding DeviceID for Arrowlake-S under MTL [mtl] (Nemesa Garg)
- Run relevant bits of debugfs drop_caches per GT (Tvrtko Ursulin)

Miscellaneous:

- Remove Wa_15010599737 [dg2] (Shekhar Chauhan)
- Align igt_spinner_create_request with hangcheck [selftests] (Jonathan Cavitt)
- Remove pre-production workarounds [dg2] (Matt Roper)
- Tidy some workaround definitions (Matt Roper)
- Wait longer for tasks in migrate selftest [gt] (Jonathan Cavitt)
- Skip WA verification for GEN7_MISCCPCTL on DG2 [gt] (Andrzej Hajda)
- Silence injected failure in the load via GSC path [huc] (Daniele Ceraolo Spurio)
- Refactor deprecated strncpy (Justin Stitt)
- Update RC6 mask for mtl_drpc [debugfs/mtl] (Badal Nilawar)
- Remove a static inline that requires including i915_drv.h [gt] (Jani Nikula)
- Remove inlines from i915_gem_execbuffer.c [gem] (Jani Nikula)
- Remove gtt_offset from stream->oa_buffer.head/.tail [perf] (Ashutosh Dixit)
- Do not disable preemption for resets (Tvrtko Ursulin)

----------------------------------------------------------------
Alan Previn (4):
      drm/i915: Fix TLB-Invalidation seqno store
      drm/i915/pxp/mtl: Update pxp-firmware response timeout
      drm/i915/pxp/mtl: Update pxp-firmware packet size
      drm/i915/lrc: User PXP contexts requires runalone bit in lrc

Andrzej Hajda (2):
      drm/i915: mark requests for GuC virtual engines to avoid use-after-free
      drm/i915/gt: skip WA verification for GEN7_MISCCPCTL on DG2

Ashutosh Dixit (1):
      drm/i915/perf: Remove gtt_offset from stream->oa_buffer.head/.tail

Badal Nilawar (1):
      drm/i915/gt: Update RC6 mask for mtl_drpc

Dan Carpenter (1):
      drm/i915/gt: Prevent error pointer dereference

Daniele Ceraolo Spurio (2):
      drm/i915/gsc: define gsc fw
      drm/i915/huc: silence injected failure in the load via GSC path

Dnyaneshwar Bhadane (1):
      drm/i915: Add Wa_18022495364

Jani Nikula (2):
      drm/i915/gt: remove a static inline that requires including i915_drv.h
      drm/i915/gem: remove inlines from i915_gem_execbuffer.c

Javier Pello (1):
      drm/i915/gt: Fix reservation address in ggtt_reserve_guc_top

John Harrison (1):
      drm/i915/guc: Force a reset on internal GuC error

Jonathan Cavitt (2):
      drm/i915/selftests: Align igt_spinner_create_request with hangcheck
      drm/i915/gt: Wait longer for tasks in migrate selftest

Justin Stitt (1):
      drm/i915: refactor deprecated strncpy

Matt Roper (11):
      drm/i915/dg2: Drop pre-production GT workarounds
      drm/i915: Tidy workaround definitions
      drm/i915/dg2: Drop Wa_16011777198
      drm/i915: Consolidate condition for Wa_22011802037
      drm/i915/xelpmp: Don't assume workarounds extend to future platforms
      drm/i915/xelpg: Call Xe_LPG workaround functions based on IP version
      drm/i915: Eliminate IS_MTL_GRAPHICS_STEP
      drm/i915: Eliminate IS_MTL_MEDIA_STEP
      drm/i915/mtl: Eliminate subplatforms
      drm/i915: Replace several IS_METEORLAKE with proper IP version checks
      drm/i915/mtl: Drop Wa_14017240301

Matthew Wilcox (Oracle) (1):
      i915: Limit the length of an sg list to the requested length

Nemesa Garg (1):
      drm/i915/mtl: Adding DeviceID for Arrowlake-S under MTL

Nirmoy Das (1):
      drm/i915: Don't set PIPE_CONTROL_FLUSH_L3 for aux inval

Shekhar Chauhan (3):
      drm/i915/dg2: Remove Wa_15010599737
      drm/i915: Add Wa_14015150844
      drm/i915: Add Wa_18028616096

Tejas Upadhyay (1):
      drm/i915/mtl: Update workaround 14016712196

Tvrtko Ursulin (2):
      drm/i915: Run relevant bits of debugfs drop_caches per GT
      drm/i915: Do not disable preemption for resets

Umesh Nerlige Ramappa (2):
      i915/pmu: Move execlist stats initialization to execlist specific setup
      i915/guc: Get runtime pm in busyness worker only if already active

 drivers/gpu/drm/i915/display/skl_universal_plane.c |   6 +-
 drivers/gpu/drm/i915/gem/i915_gem_create.c         |   4 +-
 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c     |  20 +-
 drivers/gpu/drm/i915/gem/i915_gem_shmem.c          |  11 +-
 drivers/gpu/drm/i915/gem/selftests/mock_context.c  |   2 +-
 drivers/gpu/drm/i915/gt/gen8_engine_cs.c           |  21 +-
 drivers/gpu/drm/i915/gt/intel_engine_cs.c          |   5 +-
 drivers/gpu/drm/i915/gt/intel_engine_pm.c          |   2 +-
 drivers/gpu/drm/i915/gt/intel_engine_regs.h        |   1 +
 drivers/gpu/drm/i915/gt/intel_engine_types.h       |   1 +
 .../gpu/drm/i915/gt/intel_execlists_submission.c   |   6 +-
 drivers/gpu/drm/i915/gt/intel_ggtt.c               |  23 +-
 drivers/gpu/drm/i915/gt/intel_gt.c                 |   5 +
 drivers/gpu/drm/i915/gt/intel_gt.h                 |  69 +++-
 drivers/gpu/drm/i915/gt/intel_gt_mcr.c             |   6 +-
 drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c      |   1 -
 drivers/gpu/drm/i915/gt/intel_gt_regs.h            |  10 +-
 drivers/gpu/drm/i915/gt/intel_lrc.c                |  79 ++--
 drivers/gpu/drm/i915/gt/intel_mocs.c               |  23 +-
 drivers/gpu/drm/i915/gt/intel_rc6.c                |   9 +-
 drivers/gpu/drm/i915/gt/intel_reset.c              |  34 +-
 drivers/gpu/drm/i915/gt/intel_reset.h              |   2 +
 drivers/gpu/drm/i915/gt/intel_rps.c                |   2 +-
 drivers/gpu/drm/i915/gt/intel_workarounds.c        | 407 ++++++---------------
 drivers/gpu/drm/i915/gt/selftest_migrate.c         |   2 +-
 .../drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.c  |  20 +-
 .../drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h  |   6 +
 drivers/gpu/drm/i915/gt/uc/intel_guc.c             |  64 +++-
 drivers/gpu/drm/i915/gt/uc/intel_guc.h             |  15 +
 drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c          |   6 +-
 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c        |  63 ----
 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h        |   2 -
 drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c  |  47 ++-
 drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c           |  32 +-
 drivers/gpu/drm/i915/i915_debugfs.c                |  12 +-
 drivers/gpu/drm/i915/i915_drv.h                    |  31 --
 drivers/gpu/drm/i915/i915_perf.c                   | 110 ++----
 drivers/gpu/drm/i915/i915_perf_types.h             |   6 -
 drivers/gpu/drm/i915/i915_request.c                |   7 +-
 drivers/gpu/drm/i915/i915_vma.c                    |   2 +-
 drivers/gpu/drm/i915/intel_clock_gating.c          |   8 -
 drivers/gpu/drm/i915/intel_device_info.c           |  14 -
 drivers/gpu/drm/i915/intel_device_info.h           |   4 -
 .../gpu/drm/i915/pxp/intel_pxp_cmd_interface_43.h  |   4 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c         |   2 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h         |  10 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c           |   6 +-
 drivers/gpu/drm/i915/selftests/igt_spinner.c       |   3 +
 include/drm/i915_pciids.h                          |  12 +-
 49 files changed, 529 insertions(+), 708 deletions(-)