]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/xe: Restore IDLEDLY regiter on engine reset
authorBalasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
Fri, 22 May 2026 16:35:32 +0000 (22:05 +0530)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Wed, 27 May 2026 15:27:22 +0000 (11:27 -0400)
Wa_16023105232 programs the register IDLEDLY. The register is reset
whenever the engine is reset. Therefore it should be added to the GuC
save-restore register list for it to be restored after reset.

Fixes: 7c53ff050ba8 ("drm/xe: Apply Wa_16023105232")
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patch.msgid.link/20260522163531.1365540-2-balasubramani.vivekanandan@intel.com
Signed-off-by: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
(cherry picked from commit df1cfe24743a93b71eab27687e148ab8ae9b69e3)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_guc_ads.c

index 2b835d48b5652fbc4ca4b071a1a35829cdc9d111..5760251cb685f6697ccbf27e3f43058cd4f3bb4b 100644 (file)
@@ -767,6 +767,11 @@ static unsigned int guc_mmio_regset_write(struct xe_guc_ads *ads,
                }
        }
 
+       if (XE_GT_WA(hwe->gt, 16023105232))
+               guc_mmio_regset_write_one(ads, regset_map,
+                                         RING_IDLEDLY(hwe->mmio_base),
+                                         count++);
+
        return count;
 }