drm/xe/reg_sr: Stop setting all whitelist slots
authorLucas De Marchi <lucas.demarchi@intel.com>
Mon, 9 Dec 2024 23:27:38 +0000 (15:27 -0800)
committerLucas De Marchi <lucas.demarchi@intel.com>
Wed, 11 Dec 2024 15:28:09 +0000 (07:28 -0800)
Currently xe_reg_sr_apply_whitelist() sets the unused values to a known
used value for no good reason: it could just leave it with the HW
default. The behavior is slightly different if there are no whitelist
registers for the engine as the function returns early. This is not
needed, so just drop the addition writes for the unused slots.

Later this will allow to reduce the amount of registers passed to GuC
for save/restore.

Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241209232739.147417-5-lucas.demarchi@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/xe_reg_sr.c

index 080229e..0a5c0e6 100644 (file)
@@ -227,13 +227,6 @@ void xe_reg_sr_apply_whitelist(struct xe_hw_engine *hwe)
                slot++;
        }
 
-       /* And clear the rest just in case of garbage */
-       for (; slot < RING_MAX_NONPRIV_SLOTS; slot++) {
-               u32 addr = RING_NOPID(mmio_base).addr;
-
-               xe_mmio_write32(&gt->mmio, RING_FORCE_TO_NONPRIV(mmio_base, slot), addr);
-       }
-
        xe_force_wake_put(gt_to_fw(gt), fw_ref);
 
        return;