Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] reg_sr/whitelist fixes and refactors
@ 2024-12-05 18:22 Lucas De Marchi
  2024-12-05 18:22 ` [PATCH 1/5] drm/xe/reg_sr: Remove register pool Lucas De Marchi
                   ` (12 more replies)
  0 siblings, 13 replies; 28+ messages in thread
From: Lucas De Marchi @ 2024-12-05 18:22 UTC (permalink / raw)
  To: intel-xe; +Cc: Matt Roper, Jonathan Cavitt, ashutosh.dixit, Lucas De Marchi

First patch is an important fix that we could eventually trip on (and it
did in this series because it increases the amount of save-restore
registers).

Second is more to maintain it consistent than anything else: if we don't
trust the HW defaults, what difference it makes if the engine has 1 or 0
whitelisted registers? The rest should be written to anyway. However,
I'm not happy with not trusting the HW default there: bspec says these
registers are power context saved/restored. So maybe we should add a
test to verify that's true and stop doing that? Or at least provide some
evidence this is needed because of a workaround or the like.

The other patches are what I was really intending to do in this series:
make the whitelist stop interacting with the HW. It instead collects the
registers and add them to the hwe's reg_sr. With that the mmio write
covers the hw interaction and there's no special code in xe_guc_ads.c to
communicate to GuC that these registers should survive an engine reset.

Lucas De Marchi (5):
  drm/xe/reg_sr: Remove register pool
  drm/xe/reg_sr: Write all whitelist slots
  drm/xe: Add xe_gt_dbg_printer
  drmxe/reg_sr: Convert whitelist to gt logging
  drm/xe: Apply whitelist to engine save-restore

 drivers/gpu/drm/xe/xe_gt.c            |  4 +-
 drivers/gpu/drm/xe/xe_gt_printk.h     | 22 +++++++
 drivers/gpu/drm/xe/xe_guc_ads.c       |  7 ---
 drivers/gpu/drm/xe/xe_hw_engine.c     |  1 -
 drivers/gpu/drm/xe/xe_reg_sr.c        | 84 ++-------------------------
 drivers/gpu/drm/xe/xe_reg_sr_types.h  |  6 --
 drivers/gpu/drm/xe/xe_reg_whitelist.c | 59 +++++++++++++++++++
 7 files changed, 88 insertions(+), 95 deletions(-)

-- 
2.47.0


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

end of thread, other threads:[~2024-12-09 21:53 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-05 18:22 [PATCH 0/5] reg_sr/whitelist fixes and refactors Lucas De Marchi
2024-12-05 18:22 ` [PATCH 1/5] drm/xe/reg_sr: Remove register pool Lucas De Marchi
2024-12-05 18:37   ` Matt Roper
2024-12-05 18:43     ` Lucas De Marchi
2024-12-05 18:22 ` [PATCH 2/5] drm/xe/reg_sr: Write all whitelist slots Lucas De Marchi
2024-12-05 19:25   ` Matt Roper
2024-12-06  5:03     ` Lucas De Marchi
2024-12-05 22:51   ` John Harrison
2024-12-06  5:02     ` Lucas De Marchi
2024-12-05 18:22 ` [PATCH 3/5] drm/xe: Add xe_gt_dbg_printer Lucas De Marchi
2024-12-05 19:27   ` Matt Roper
2024-12-05 19:51   ` Michal Wajdeczko
2024-12-05 18:22 ` [PATCH 4/5] drmxe/reg_sr: Convert whitelist to gt logging Lucas De Marchi
2024-12-05 19:27   ` Matt Roper
2024-12-05 18:22 ` [PATCH 5/5] drm/xe: Apply whitelist to engine save-restore Lucas De Marchi
2024-12-05 20:42   ` Matt Roper
2024-12-06  5:06     ` Lucas De Marchi
2024-12-09 21:13     ` Lucas De Marchi
2024-12-05 23:14   ` John Harrison
2024-12-09 21:53     ` Lucas De Marchi
2024-12-05 18:32 ` ✓ CI.Patch_applied: success for reg_sr/whitelist fixes and refactors Patchwork
2024-12-05 18:32 ` ✗ CI.checkpatch: warning " Patchwork
2024-12-05 18:34 ` ✓ CI.KUnit: success " Patchwork
2024-12-05 19:06 ` ✓ CI.Build: " Patchwork
2024-12-05 19:08 ` ✓ CI.Hooks: " Patchwork
2024-12-05 19:10 ` ✓ CI.checksparse: " Patchwork
2024-12-05 19:30 ` ✗ Xe.CI.BAT: failure " Patchwork
2024-12-05 20:32 ` ✗ Xe.CI.Full: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox