[PATCH v6 0/8] More missing XeLP workarounds
Tvrtko Ursulin
tvrtko.ursulin at igalia.com
Fri Jun 27 13:21:42 UTC 2025
Some more missing XeLP workarounds. This time including some which need to go
into indirect context, which also means some plumbing had to be added.
Includes a fix to use iosys helpers for existing wa bb emission since there is a
code dependency on it.
v2:
* Use iosys helpers.
* Split indirect context plumbing as a separate patch.
* Tweak where and how Wa_16010904313 is emitted.
* Move Wa_18022495364 into the wa_bb.
v3:
* Rewrite on top of Lucas' wa bb changes - use same infrastructure.
v4:
* Rework due 3a1edef8f4b5 ("drm/xe: Make WA BB part of LRC BO").
v5:
* Fix indirect ring state offset calculation.
* Removed extra space in one patch.
v6:
* Fixed indirect ctx MI_NOOP padding to 64B cacheline.
* Do not add negative errors codes to reported emitted counts.
* Renamed workaround emission functions. (Lucas)
Cc: Lucas De Marchi <lucas.demarchi at intel.com>
Cc: Matt Roper <matthew.d.roper at intel.com>
Tvrtko Ursulin (8):
drm/xe: Consolidate LRC offset calculations
drm/xe: Generalize wa bb emission code
drm/xe: Rename utilisation workaround emission function
drm/xe: Return 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/xelp: Implement Wa_16010904313
drm/xe/xelp: Add Wa_18022495364
.../gpu/drm/xe/instructions/xe_mi_commands.h | 1 +
drivers/gpu/drm/xe/regs/xe_engine_regs.h | 3 +
drivers/gpu/drm/xe/regs/xe_lrc_layout.h | 4 +
drivers/gpu/drm/xe/xe_lrc.c | 270 ++++++++++++++----
drivers/gpu/drm/xe/xe_lrc_types.h | 5 +-
drivers/gpu/drm/xe/xe_wa_oob.rules | 2 +
6 files changed, 234 insertions(+), 51 deletions(-)
--
2.48.0
More information about the Intel-xe
mailing list