[PULL] drm-xe-next

Rodrigo Vivi rodrigo.vivi at intel.com
Tue Jul 15 18:21:02 UTC 2025


Hi Dave and Sima,

Here goes our last drm-xe-next PR towards 6.17.

It brings a lot of workarounds infra and additions and
the enabling of SRIOV capability in BMG, as long as
underneath hardware SKU and Firmware supports it as well.

Thanks,
Rodrigo.

drm-xe-next-2025-07-15:
Driver Changes:
 - Create and use XE_DEVICE_WA infrastructure (Atwood)
 - SRIOV: Mark BMG as SR-IOV capable (Michal)
 - Dont skip TLB invalidations on VF (Tejas)
 - Fix migration copy direction in access_memory (Auld)
 - General code clean-up (Lucas, Brost, Dr. David, Xin)
 - More missing XeLP workarounds (Tvrtko)
 - SRIOV: Relax VF/PF version negotiation (Michal)
 - SRIOV: LMTT invalidation (Michal)
The following changes since commit 94de94d24ea8cf567ec7254a723c3192c72c2ca6:

  drm/xe/guc: Cancel ongoing H2G requests when stopping CT (2025-07-10 21:46:29 +0200)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2025-07-15

for you to fetch changes up to a81648768178f6adf171d98db486b4b2613f645a:

  drm/xe/pf: Invalidate LMTT after completing changes (2025-07-15 13:05:22 +0200)

----------------------------------------------------------------
Driver Changes:
 - Create and use XE_DEVICE_WA infrastructure (Atwood)
 - SRIOV: Mark BMG as SR-IOV capable (Michal)
 - Dont skip TLB invalidations on VF (Tejas)
 - Fix migration copy direction in access_memory (Auld)
 - General code clean-up (Lucas, Brost, Dr. David, Xin)
 - More missing XeLP workarounds (Tvrtko)
 - SRIOV: Relax VF/PF version negotiation (Michal)
 - SRIOV: LMTT invalidation (Michal)

----------------------------------------------------------------
Dr. David Alan Gilbert (1):
      drm/xe: Remove unused functions

Lucas De Marchi (9):
      drm/xe/migrate: Fix alignment check
      drm/xe: Normalize default param values
      drm/xe: Fix missing kernel-doc
      drm/xe/lrc: Reduce scope of empty lrc data
      drm/xe: Count dwords before allocating
      drm/xe/gt: Extract emit_job_sync()
      drm/xe/lrc: Remove leftover TODO/FIXME
      drm/xe/gt: Drop third submission for default context
      drm/xe/lrc: Add table with LRC layout

Matt Atwood (6):
      drm/xe: prepare xe_gen_wa_oob to be multi-use
      drm/xe: add xe_device_wa infrastructure
      drm/xe: add new type to RTP context
      drm/xe: Add infrastructure for Device OOB workarounds
      drm/xe: Move Wa_15015404425 to use the new XE_DEVICE_WA macro
      drm/xe: extend Wa_15015404425 to apply to PTL

Matthew Auld (1):
      drm/xe/migrate: fix copy direction in access_memory

Matthew Brost (2):
      drm/xe: Move page fault init after topology init
      drm/xe: Remove references to CONFIG_DRM_XE_DEVMEM_MIRROR

Michal Wajdeczko (14):
      drm/xe/sriov: Mark BMG as SR-IOV capable
      drm/xe: Combine PF and VF device data into union
      drm/xe: Move PF and VF device types to separate headers
      drm/xe: Introduce xe_tile_is_root helper
      drm/xe: Introduce xe_gt_is_main_type helper
      drm/xe/pf: Expose basic info about VFs in debugfs
      drm/xe/pf: Stop requiring VF/PF version negotiation on every GT
      drm/xe/vf: Store negotiated VF/PF ABI version at device level
      drm/xe/pf: Prepare to stop SR-IOV support prior GT reset
      drm/xe/pf: Resend PF provisioning after GT reset
      drm/xe/pf: Move GGTT config KLVs encoding to helper
      drm/xe/pf: Force GuC virtualization mode
      drm/xe/pf: Invalidate LMTT during LMEM unprovisioning
      drm/xe/pf: Invalidate LMTT after completing changes

Tejas Upadhyay (1):
      drm/xe: Dont skip TLB invalidations on VF

Tvrtko Ursulin (7):
      drm/xe: Generalize wa bb emission code
      drm/xe: Pass wa bb setup arguments in a struct
      drm/xe: Rename utilization workaround emission function
      drm/xe: Track number of written dwords from workaround batch buffer emission
      drm/xe: Allow specifying number of extra dwords at the end of wa bb emission
      drm/xe: Add plumbing for indirect context workarounds
      drm/xe: Waste fewer instructions in emit_wa_job()

Xin Wang (1):
      drm/xe: Update register definitions in LRC layout header

 drivers/gpu/drm/xe/Makefile                        |  12 +-
 drivers/gpu/drm/xe/regs/xe_lrc_layout.h            |   7 +
 .../gpu/drm/xe/tests/xe_gt_sriov_pf_service_test.c | 232 ------------------
 .../gpu/drm/xe/tests/xe_sriov_pf_service_kunit.c   | 227 +++++++++++++++++
 drivers/gpu/drm/xe/xe_bb.c                         |   2 +-
 drivers/gpu/drm/xe/xe_bb.h                         |   2 +-
 drivers/gpu/drm/xe/xe_bo.c                         |  15 --
 drivers/gpu/drm/xe/xe_bo.h                         |   3 -
 drivers/gpu/drm/xe/xe_debugfs.c                    |  24 ++
 drivers/gpu/drm/xe/xe_device.c                     |   8 +
 drivers/gpu/drm/xe/xe_device.h                     |   4 +
 drivers/gpu/drm/xe/xe_device_types.h               |  25 +-
 drivers/gpu/drm/xe/xe_device_wa_oob.rules          |   2 +
 drivers/gpu/drm/xe/xe_force_wake.c                 |   2 +-
 drivers/gpu/drm/xe/xe_gen_wa_oob.c                 |  45 +++-
 drivers/gpu/drm/xe/xe_gsc_proxy.c                  |   3 +-
 drivers/gpu/drm/xe/xe_gt.c                         | 191 +++++++--------
 drivers/gpu/drm/xe/xe_gt.h                         |   5 +
 drivers/gpu/drm/xe/xe_gt_idle.c                    |   2 +-
 drivers/gpu/drm/xe/xe_gt_sriov_pf.c                |  19 ++
 drivers/gpu/drm/xe/xe_gt_sriov_pf.h                |   5 +
 drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c         | 126 +++++++---
 drivers/gpu/drm/xe/xe_gt_sriov_pf_control.c        |   7 +-
 drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c        |   9 +-
 drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c        | 166 +------------
 drivers/gpu/drm/xe/xe_gt_sriov_pf_service.h        |   2 -
 drivers/gpu/drm/xe/xe_gt_sriov_vf.c                |  34 +--
 drivers/gpu/drm/xe/xe_gt_sriov_vf_types.h          |  12 -
 drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c        |  34 +++
 drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h        |   1 +
 drivers/gpu/drm/xe/xe_gt_topology.c                |   5 -
 drivers/gpu/drm/xe/xe_gt_topology.h                |   2 -
 drivers/gpu/drm/xe/xe_irq.c                        |   7 +-
 drivers/gpu/drm/xe/xe_lmtt.c                       |  54 +++++
 drivers/gpu/drm/xe/xe_lmtt.h                       |   1 +
 drivers/gpu/drm/xe/xe_lrc.c                        | 269 ++++++++++++++++-----
 drivers/gpu/drm/xe/xe_lrc.h                        |   2 +-
 drivers/gpu/drm/xe/xe_lrc_types.h                  |   3 +-
 drivers/gpu/drm/xe/xe_migrate.c                    |   6 +-
 drivers/gpu/drm/xe/xe_mmio.c                       |   8 +-
 drivers/gpu/drm/xe/xe_module.c                     |  35 ++-
 drivers/gpu/drm/xe/xe_oa.c                         |   6 +-
 drivers/gpu/drm/xe/xe_pci.c                        |   1 +
 drivers/gpu/drm/xe/xe_ring_ops.c                   |  22 +-
 drivers/gpu/drm/xe/xe_rtp.c                        |  47 ++--
 drivers/gpu/drm/xe/xe_rtp.h                        |  14 +-
 drivers/gpu/drm/xe/xe_rtp_types.h                  |   2 +
 drivers/gpu/drm/xe/xe_sriov_pf.c                   |  61 ++++-
 drivers/gpu/drm/xe/xe_sriov_pf.h                   |   6 +
 drivers/gpu/drm/xe/xe_sriov_pf_service.c           | 216 +++++++++++++++++
 drivers/gpu/drm/xe/xe_sriov_pf_service.h           |  23 ++
 drivers/gpu/drm/xe/xe_sriov_pf_service_types.h     |  36 +++
 drivers/gpu/drm/xe/xe_sriov_pf_types.h             |  45 ++++
 drivers/gpu/drm/xe/xe_sriov_types.h                |  36 ---
 drivers/gpu/drm/xe/xe_sriov_vf_types.h             |  41 ++++
 drivers/gpu/drm/xe/xe_tile.h                       |   6 +
 drivers/gpu/drm/xe/xe_vm.c                         |   4 +-
 drivers/gpu/drm/xe/xe_wa.c                         |  58 +++++
 drivers/gpu/drm/xe/xe_wa.h                         |  22 +-
 drivers/gpu/drm/xe/xe_wa_oob.rules                 |   2 +
 60 files changed, 1501 insertions(+), 765 deletions(-)
 delete mode 100644 drivers/gpu/drm/xe/tests/xe_gt_sriov_pf_service_test.c
 create mode 100644 drivers/gpu/drm/xe/tests/xe_sriov_pf_service_kunit.c
 create mode 100644 drivers/gpu/drm/xe/xe_device_wa_oob.rules
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_service.c
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_service.h
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_service_types.h
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_pf_types.h
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_types.h


More information about the Intel-xe mailing list