Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH] i915/gt: Reapply workarounds in case the previous attempt failed.
@ 2024-12-05 15:47 Sebastian Brzezinka
  2024-12-05 21:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Sebastian Brzezinka @ 2024-12-05 15:47 UTC (permalink / raw)
  To: intel-gfx; +Cc: andi.shyti, vidya.srinivas

`wa_verify`sporadically detects lost workaround on application; this
is unusual behavior since wa are applied at `intel_gt_init_hw` and
verified right away by `intel_gt_verify_workarounds`, and  `wa_verify`
doesn't fail on initialization as one might suspect would happen.

One approach that may be somewhat beneficial is to reapply workarounds
in the event of failure, or even get rid of verify on application,
since it's redundant to `intel_gt_verify_workarounds`.

This patch aims to resolve: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12668

Signed-off-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
---
 drivers/gpu/drm/i915/gt/intel_workarounds.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c
index 570c91878189..4ee623448223 100644
--- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
@@ -1761,6 +1761,17 @@ static void wa_list_apply(const struct i915_wa_list *wal)
 				intel_gt_mcr_read_any_fw(gt, wa->mcr_reg) :
 				intel_uncore_read_fw(uncore, wa->reg);
 
+			if ((val ^ wa->set) & wa->read) { 
+				if (wa->is_mcr)
+					intel_gt_mcr_multicast_write_fw(gt, wa->mcr_reg, val);
+				else
+					intel_uncore_write_fw(uncore, wa->reg, val);
+			}
+
+			val = wa->is_mcr ?
+				intel_gt_mcr_read_any_fw(gt, wa->mcr_reg) :
+				intel_uncore_read_fw(uncore, wa->reg);
+
 			wa_verify(gt, wa, val, wal->name, "application");
 		}
 	}
-- 
2.34.1


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

end of thread, other threads:[~2024-12-18 14:48 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-05 15:47 [RFC PATCH] i915/gt: Reapply workarounds in case the previous attempt failed Sebastian Brzezinka
2024-12-05 21:45 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2024-12-05 22:04 ` ✗ i915.CI.BAT: failure " Patchwork
2024-12-06 12:36 ` ✗ Fi.CI.CHECKPATCH: warning for i915/gt: Reapply workarounds in case the previous attempt failed. (rev2) Patchwork
2024-12-06 12:45 ` ✓ i915.CI.BAT: success " Patchwork
2024-12-06 14:03 ` ✓ i915.CI.Full: " Patchwork
2024-12-06 15:38 ` [RFC PATCH] i915/gt: Reapply workarounds in case the previous attempt failed Rodrigo Vivi
2024-12-12 14:51   ` Andi Shyti
2024-12-16 21:27     ` Matt Roper
2024-12-18 14:48       ` Andi Shyti

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