drm/i915: Clarify error message on failed workaround
authorMatt Roper <matthew.d.roper@intel.com>
Thu, 31 Dec 2020 19:11:03 +0000 (11:11 -0800)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 1 Jan 2021 22:15:03 +0000 (22:15 +0000)
Let's modify the "workaround lost" error message slightly to make it
more clear what the various numbers represent.  Also, the 'expected'
value needs to be &'d with wa->read so that it doesn't include the mask
bits for masked registers (those bits are write-only in the hardware and
will usually always read out as 0's).

Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20201231191103.854519-1-matthew.d.roper@intel.com
drivers/gpu/drm/i915/gt/intel_workarounds.c

index 42d320e68b60e1432aed02d5d5b5a7fc506067c1..b0e3a5ba0320810be1ac0b6a251715d1ec3363af 100644 (file)
@@ -1383,9 +1383,9 @@ static bool
 wa_verify(const struct i915_wa *wa, u32 cur, const char *name, const char *from)
 {
        if ((cur ^ wa->set) & wa->read) {
-               DRM_ERROR("%s workaround lost on %s! (%x=%x/%x, expected %x)\n",
+               DRM_ERROR("%s workaround lost on %s! (reg[%x]=0x%x, relevant bits were 0x%x vs expected 0x%x)\n",
                          name, from, i915_mmio_reg_offset(wa->reg),
-                         cur, cur & wa->read, wa->set);
+                         cur, cur & wa->read, wa->set & wa->read);
 
                return false;
        }