[PATCH 00/10] Engine initialization cleanup

Matt Roper
2026-04-23T22:49:09Z

A lot of our engine initialization code was inherited from i915 and
hasn't received too much cleanup since that time. There's also some
inconsistencies between the main initialization path used on all
platforms, and the vestigial execlist code which isn't actually used but
still remains in the driver as dead code for now. Let's clean things up
a bit and, where possible, move the required engine programming into the
RTP infrastructure so that it will be applied on both initialization
paths, and be dumpable/checkable via debugfs.

There's some more restructuring that should happen to more clearly
distinguish software state initialization from hardware initialization
(and re-initialization on various resets & suspend/resume), but I'll
leave that to a follow-up series to prevent this one from getting too
complicated.

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
---
Matt Roper (10):
drm/xe: Move CCS enablement to engine setup RTP
drm/xe/rtp: Add "always true" match function
drm/xe: Stop programming BLIT_CCTL on Xe2 and later platforms
drm/xe: Move HWSTAM programming to RTP
drm/xe: Fix name and definition of GFX_MODE register
drm/xe: Const-ify parameters to xe_device_has_* functions
drm/xe: Move GFX_MODE programming to RTP
drm/xe: Drop unnecessary STOP_RING clearing
drm/xe: Drop xe_hw_engine_mmio_write32()
drm/xe: Mark BCS engines as belonging to the GT forcewake domain

drivers/gpu/drm/xe/regs/xe_engine_regs.h | 5 +-
drivers/gpu/drm/xe/xe_device.h | 14 +++---
drivers/gpu/drm/xe/xe_execlist.c | 9 ----
drivers/gpu/drm/xe/xe_guc_ads.c | 2 -
drivers/gpu/drm/xe/xe_guc_capture.c | 2 +-
drivers/gpu/drm/xe/xe_hw_engine.c | 82 +++++++++++++-------------------
drivers/gpu/drm/xe/xe_lrc.c | 20 --------
drivers/gpu/drm/xe/xe_rtp.c | 15 ++++++
drivers/gpu/drm/xe/xe_rtp.h | 24 ++++++++++
9 files changed, 81 insertions(+), 92 deletions(-)
---
base-commit: 021ccd6f29b34f09e4b3aac0d6d52b8adaa1c4b4
change-id: 20260402-engine-setup-e66851295e18

Best regards,
--
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation