All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-xe] [PATCH v3 0/9] Dump + OOB workarounds
@ 2023-05-16 22:19 Lucas De Marchi
  2023-05-16 22:19 ` [Intel-xe] [PATCH v3 1/9] drm/xe: Fix Wa_22011802037 annotation Lucas De Marchi
                   ` (12 more replies)
  0 siblings, 13 replies; 29+ messages in thread
From: Lucas De Marchi @ 2023-05-16 22:19 UTC (permalink / raw)
  To: intel-xe; +Cc: Lucas De Marchi, Rodrigo Vivi

Third version adding OOB workarounds, third different approach.
Gone is the special ELF section and now it's implemented by
creating a new RTP struct that holds tables containing only rules,
without the actions interacting with reg-save-restore.

Now a common approach between all types of workarounds is used for
marking the "active" workarounds. These are the ones in play for the
running system.  They can be queried over debugfs and for the OOB,
are checked throughout the code. Last patch converts xe_guc.c to the
new infra.

In order to be able to implement the simpler XE_WA() requested in
previous versions, and at the same time avoiding error-prone updates
in different places of the code, a simple program was written to
generate xe_wa_oob.c and xe_wa_oob.h. The syntax is kept very simple
on purpose, with the following goals:

	1) Be similar to the rest of the workarounds. The codegen
	   just paste together the info in the .rules file
	   and updated header/source with the appropriate values
	2) Doesn't increase the build dependencies of the kernel,
	   so it's implemented in C and built as a hostprog.

Tested on a single DG2 system.

Lucas De Marchi

Lucas De Marchi (9):
  drm/xe: Fix Wa_22011802037 annotation
  drm/xe/rtp: Split rtp process initialization
  drm/xe/rtp: Add "_sr" to entry/function names
  drm/xe/rtp: Allow to track active workarounds
  drm/xe/wa: Track gt/engine/lrc active workarounds
  drm/xe/debugfs: Dump active workarounds
  drm/xe/rtp: Add support for entries with no action
  drm/xe: Add support for OOB workarounds
  drm/xe/guc: Port workarounds to OOB infra

 drivers/gpu/drm/xe/Makefile            |  14 ++
 drivers/gpu/drm/xe/tests/xe_rtp_test.c |  23 ++--
 drivers/gpu/drm/xe/xe_debugfs.c        |  12 ++
 drivers/gpu/drm/xe/xe_device.c         |   7 +
 drivers/gpu/drm/xe/xe_device_types.h   |  12 ++
 drivers/gpu/drm/xe/xe_gen_wa_oob.c     | 165 +++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc.c            |  49 +++----
 drivers/gpu/drm/xe/xe_hw_engine.c      |  10 +-
 drivers/gpu/drm/xe/xe_reg_whitelist.c  |   6 +-
 drivers/gpu/drm/xe/xe_rtp.c            | 180 +++++++++++++++++++++----
 drivers/gpu/drm/xe/xe_rtp.h            |  31 +++--
 drivers/gpu/drm/xe/xe_rtp_types.h      |  28 +++-
 drivers/gpu/drm/xe/xe_tuning.c         |  12 +-
 drivers/gpu/drm/xe/xe_wa.c             | 106 +++++++++++++--
 drivers/gpu/drm/xe/xe_wa.h             |  13 ++
 drivers/gpu/drm/xe/xe_wa_oob.rules     |  16 +++
 16 files changed, 584 insertions(+), 100 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_gen_wa_oob.c
 create mode 100644 drivers/gpu/drm/xe/xe_wa_oob.rules

-- 
2.40.1


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2023-05-25  5:11 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-16 22:19 [Intel-xe] [PATCH v3 0/9] Dump + OOB workarounds Lucas De Marchi
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 1/9] drm/xe: Fix Wa_22011802037 annotation Lucas De Marchi
2023-05-17 16:20   ` Matt Roper
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 2/9] drm/xe/rtp: Split rtp process initialization Lucas De Marchi
2023-05-17 17:11   ` Matt Roper
2023-05-17 20:09     ` Lucas De Marchi
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 3/9] drm/xe/rtp: Add "_sr" to entry/function names Lucas De Marchi
2023-05-17 17:13   ` Matt Roper
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 4/9] drm/xe/rtp: Allow to track active workarounds Lucas De Marchi
2023-05-17 17:27   ` Matt Roper
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 5/9] drm/xe/wa: Track gt/engine/lrc " Lucas De Marchi
2023-05-17 17:50   ` Matt Roper
2023-05-17 20:23     ` Lucas De Marchi
2023-05-25  5:11       ` Lucas De Marchi
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 6/9] drm/xe/debugfs: Dump " Lucas De Marchi
2023-05-17 17:55   ` Matt Roper
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 7/9] drm/xe/rtp: Add support for entries with no action Lucas De Marchi
2023-05-17 18:46   ` Matt Roper
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 8/9] drm/xe: Add support for OOB workarounds Lucas De Marchi
2023-05-17 20:49   ` Matt Roper
2023-05-17 21:12     ` Lucas De Marchi
2023-05-16 22:19 ` [Intel-xe] [PATCH v3 9/9] drm/xe/guc: Port workarounds to OOB infra Lucas De Marchi
2023-05-17 21:25   ` Matt Roper
2023-05-17 22:25     ` Lucas De Marchi
2023-05-17 22:43       ` Matt Roper
2023-05-16 22:23 ` [Intel-xe] ✓ CI.Patch_applied: success for Dump + OOB workarounds Patchwork
2023-05-16 22:24 ` [Intel-xe] ✓ CI.KUnit: " Patchwork
2023-05-16 22:28 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-05-17  4:39 ` [Intel-xe] [PATCH v3 0/9] " Lucas De Marchi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.