Hi Dave and Simona, Here's this week's drm-xe-next PR towards 7.2.
Series highlights: - drm/xe: Refresh MEMIRQ code 9/9 patches pushed Updates the memory-based interrupt (MEMIRQ) code following a new programming note. Moves the IRQ page definition into the HW engine definition, makes internal page layout macros private, reduces buffer sizes, and drops cached iosys_map references for the status and mask pages to simplify the implementation. (Michal Wajdeczko) - drm/xe: Make drm_driver const 7/7 patches pushed Removes runtime modifications to the drm_driver struct that were used to conditionally enable display support. Replaces this with updates to drm_device.driver_features bits instead, following the existing driver_features design. Also cleans up display driver hooks, stubs, and removes unused includes. (Michal Wajdeczko) - Fix MCR inconsistencies in RTP tables 7/7 patches pushed The Xe RTP (Register Table Programming) tables had inconsistencies between MCR and non-MCR register types. Adds a sanity check to catch such mismatches, extracts a helper for steering type range queries, and converts several registers (CACHE_MODE_1, COMMON_SLICE_CHICKEN1, COMMON_SLICE_CHICKEN4) to their correct MCR definitions. (Gustavo Sousa) Single patches: - drm/xe/oa: Fix exec_queue leak on width check in stream open (Shuicheng Lin) - drm/xe/guc: Use xe_device_is_l2_flush_optimized() (Gustavo Sousa) - drm/xe/multi_queue: Fix secondary queue error case (Niranjana Vishwanathapura) - drm/xe/pf: Fix CFI failure in debugfs access (Mohanram Meenakshisundaram) - drm/xe/vf: Fix signature of print functions (Michal Wajdeczko) - drm/xe/sriov: Mark NVL as SR-IOV capable (Jakub Kolakowski) - drm/xe/gt_idle: Use NSEC_PER_MSEC instead of float literal (Shuicheng Lin) - drm/xe/gsc: Fix double-free of managed BO in error path (Shuicheng Lin) drm-xe-next-2026-05-21: Driver Changes: - drm/xe/oa: Fix exec_queue leak on width check in stream open (Shuicheng Lin) - drm/xe/memirq: Drop cached iosys_map for MEMIRQ status (Michal Wajdeczko) - drm/xe/memirq: Drop cached iosys_map for MEMIRQ mask (Michal Wajdeczko) - drm/xe/memirq: Dump all source pages if MSI-X (Michal Wajdeczko) - drm/xe/memirq: Update diagnostic message (Michal Wajdeczko) - drm/xe/memirq: Reduce buffer size (Michal Wajdeczko) - drm/xe/memirq: Use IRQ page from HW engine definition (Michal Wajdeczko) - drm/xe/memirq: Update GuC initialization and IRQ handler (Michal Wajdeczko) - drm/xe/memirq: Make page layout macros private (Michal Wajdeczko) - drm/xe: Add IRQ page to HW engine definition (Michal Wajdeczko) - drm/xe/guc: Use xe_device_is_l2_flush_optimized() (Gustavo Sousa) - drm/xe/multi_queue: Fix secondary queue error case (Niranjana Vishwanathapura) - drm/xe/reg_sr: Do sanity check for MCR vs non-MCR (Gustavo Sousa) - drm/xe/mcr: Extract reg_in_steering_type_ranges() (Gustavo Sousa) - drm/xe/kunit: Use KUNIT_EXPECT_EQ() in xe_wa_gt() (Gustavo Sousa) - drm/xe: Extract xe_hw_engine_setup_reg_lrc() (Gustavo Sousa) - drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN4 (Gustavo Sousa) - drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN1 (Gustavo Sousa) - drm/xe: Define CACHE_MODE_1 as MCR register (Gustavo Sousa) - drm/xe/pf: Fix CFI failure in debugfs access (Mohanram Meenakshisundaram) - drm/xe/vf: Fix signature of print functions (Michal Wajdeczko) - drm/xe: Make drm_driver const (Michal Wajdeczko) - drm/xe/display: Drop xe_display_driver_set_hooks() (Michal Wajdeczko) - drm/xe/display: Add macro with display driver features (Michal Wajdeczko) - drm/xe/display: Add macro with display driver ops (Michal Wajdeczko) - drm/xe/display: Prefer forward declarations (Michal Wajdeczko) - drm/xe/display: Drop xe_display_driver_remove() stub (Michal Wajdeczko) - drm/xe: Drop unused drm/drm_atomic_helper.h include (Michal Wajdeczko) - drm/xe/sriov: Mark NVL as SR-IOV capable (Jakub Kolakowski) - drm/xe/gt_idle: Use NSEC_PER_MSEC instead of float literal (Shuicheng Lin) - drm/xe/gsc: Fix double-free of managed BO in error path (Shuicheng Lin) The following changes since commit 2ddedd4b7b7c329dd65358025cba8652675bec3d: drm/xe/memirq: Enable GT_MI_USER_INTERRUPT only (2026-05-13 20:11:21 +0200) are available in the Git repository at: https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2026-05-21 for you to fetch changes up to 339fa0be9e4a5d69fa47e91f4a36574224fb478f: drm/xe/oa: Fix exec_queue leak on width check in stream open (2026-05-19 08:48:46 -0700) ---------------------------------------------------------------- Driver Changes: - drm/xe/oa: Fix exec_queue leak on width check in stream open (Shuicheng Lin) - drm/xe/memirq: Drop cached iosys_map for MEMIRQ status (Michal Wajdeczko) - drm/xe/memirq: Drop cached iosys_map for MEMIRQ mask (Michal Wajdeczko) - drm/xe/memirq: Dump all source pages if MSI-X (Michal Wajdeczko) - drm/xe/memirq: Update diagnostic message (Michal Wajdeczko) - drm/xe/memirq: Reduce buffer size (Michal Wajdeczko) - drm/xe/memirq: Use IRQ page from HW engine definition (Michal Wajdeczko) - drm/xe/memirq: Update GuC initialization and IRQ handler (Michal Wajdeczko) - drm/xe/memirq: Make page layout macros private (Michal Wajdeczko) - drm/xe: Add IRQ page to HW engine definition (Michal Wajdeczko) - drm/xe/guc: Use xe_device_is_l2_flush_optimized() (Gustavo Sousa) - drm/xe/multi_queue: Fix secondary queue error case (Niranjana Vishwanathapura) - drm/xe/reg_sr: Do sanity check for MCR vs non-MCR (Gustavo Sousa) - drm/xe/mcr: Extract reg_in_steering_type_ranges() (Gustavo Sousa) - drm/xe/kunit: Use KUNIT_EXPECT_EQ() in xe_wa_gt() (Gustavo Sousa) - drm/xe: Extract xe_hw_engine_setup_reg_lrc() (Gustavo Sousa) - drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN4 (Gustavo Sousa) - drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN1 (Gustavo Sousa) - drm/xe: Define CACHE_MODE_1 as MCR register (Gustavo Sousa) - drm/xe/pf: Fix CFI failure in debugfs access (Mohanram Meenakshisundaram) - drm/xe/vf: Fix signature of print functions (Michal Wajdeczko) - drm/xe: Make drm_driver const (Michal Wajdeczko) - drm/xe/display: Drop xe_display_driver_set_hooks() (Michal Wajdeczko) - drm/xe/display: Add macro with display driver features (Michal Wajdeczko) - drm/xe/display: Add macro with display driver ops (Michal Wajdeczko) - drm/xe/display: Prefer forward declarations (Michal Wajdeczko) - drm/xe/display: Drop xe_display_driver_remove() stub (Michal Wajdeczko) - drm/xe: Drop unused drm/drm_atomic_helper.h include (Michal Wajdeczko) - drm/xe/sriov: Mark NVL as SR-IOV capable (Jakub Kolakowski) - drm/xe/gt_idle: Use NSEC_PER_MSEC instead of float literal (Shuicheng Lin) - drm/xe/gsc: Fix double-free of managed BO in error path (Shuicheng Lin) ---------------------------------------------------------------- Gustavo Sousa (8): drm/xe: Define CACHE_MODE_1 as MCR register drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN1 drm/xe: Define and use MCR version of COMMON_SLICE_CHICKEN4 drm/xe: Extract xe_hw_engine_setup_reg_lrc() drm/xe/kunit: Use KUNIT_EXPECT_EQ() in xe_wa_gt() drm/xe/mcr: Extract reg_in_steering_type_ranges() drm/xe/reg_sr: Do sanity check for MCR vs non-MCR drm/xe/guc: Use xe_device_is_l2_flush_optimized() Jakub Kolakowski (1): drm/xe/sriov: Mark NVL as SR-IOV capable Michal Wajdeczko (17): drm/xe: Drop unused drm/drm_atomic_helper.h include drm/xe/display: Drop xe_display_driver_remove() stub drm/xe/display: Prefer forward declarations drm/xe/display: Add macro with display driver ops drm/xe/display: Add macro with display driver features drm/xe/display: Drop xe_display_driver_set_hooks() drm/xe: Make drm_driver const drm/xe/vf: Fix signature of print functions drm/xe: Add IRQ page to HW engine definition drm/xe/memirq: Make page layout macros private drm/xe/memirq: Update GuC initialization and IRQ handler drm/xe/memirq: Use IRQ page from HW engine definition drm/xe/memirq: Reduce buffer size drm/xe/memirq: Update diagnostic message drm/xe/memirq: Dump all source pages if MSI-X drm/xe/memirq: Drop cached iosys_map for MEMIRQ mask drm/xe/memirq: Drop cached iosys_map for MEMIRQ status Mohanram Meenakshisundaram (1): drm/xe/pf: Fix CFI failure in debugfs access Niranjana Vishwanathapura (1): drm/xe/multi_queue: Fix secondary queue error case Shuicheng Lin (3): drm/xe/gsc: Fix double-free of managed BO in error path drm/xe/gt_idle: Use NSEC_PER_MSEC instead of float literal drm/xe/oa: Fix exec_queue leak on width check in stream open drivers/gpu/drm/xe/display/xe_display.c | 33 +++----- drivers/gpu/drm/xe/display/xe_display.h | 21 ++++- drivers/gpu/drm/xe/regs/xe_gt_regs.h | 4 +- drivers/gpu/drm/xe/tests/xe_rtp_test.c | 71 +++++++++++++++-- drivers/gpu/drm/xe/tests/xe_wa_test.c | 14 +++- drivers/gpu/drm/xe/xe_device.c | 13 +-- drivers/gpu/drm/xe/xe_gsc.c | 5 +- drivers/gpu/drm/xe/xe_gt.c | 8 +- drivers/gpu/drm/xe/xe_gt_idle.c | 4 +- drivers/gpu/drm/xe/xe_gt_mcr.c | 65 ++++++++++----- drivers/gpu/drm/xe/xe_gt_mcr.h | 1 + drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.c | 6 +- drivers/gpu/drm/xe/xe_gt_sriov_pf_monitor.h | 2 +- drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 24 ++++-- drivers/gpu/drm/xe/xe_gt_sriov_vf.h | 6 +- drivers/gpu/drm/xe/xe_guc.c | 2 +- drivers/gpu/drm/xe/xe_guc_submit.c | 16 ++-- drivers/gpu/drm/xe/xe_hw_engine.c | 26 ++++-- drivers/gpu/drm/xe/xe_hw_engine.h | 2 +- drivers/gpu/drm/xe/xe_hw_engine_types.h | 2 + drivers/gpu/drm/xe/xe_memirq.c | 118 +++++++++++++++++----------- drivers/gpu/drm/xe/xe_memirq_types.h | 13 +-- drivers/gpu/drm/xe/xe_oa.c | 6 +- drivers/gpu/drm/xe/xe_pci.c | 2 + drivers/gpu/drm/xe/xe_reg_sr.c | 36 +++++++++ drivers/gpu/drm/xe/xe_tuning.c | 2 +- drivers/gpu/drm/xe/xe_wa.c | 6 +- 27 files changed, 348 insertions(+), 160 deletions(-)
