From: Matt Roper Date: Mon, 13 Oct 2025 20:09:52 +0000 (-0700) Subject: drm/xe: Skip L2 / TDF cache flushes if primary GT is disabled X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=082547d8b401f8eef076d18344c267fe1bddb055;p=thirdparty%2Fkernel%2Flinux.git drm/xe: Skip L2 / TDF cache flushes if primary GT is disabled If the primary GT is disabled via configfs, GT-side L2 and TD cache flushes are unnecessary since nothing is using/filling these caches. Reviewed-by: Tejas Upadhyay Link: https://lore.kernel.org/r/20251013200944.2499947-34-matthew.d.roper@intel.com Signed-off-by: Matt Roper --- diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c index 6f8f72fd1b133..e2aa79a789389 100644 --- a/drivers/gpu/drm/xe/xe_device.c +++ b/drivers/gpu/drm/xe/xe_device.c @@ -1062,6 +1062,8 @@ void xe_device_l2_flush(struct xe_device *xe) unsigned int fw_ref; gt = xe_root_mmio_gt(xe); + if (!gt) + return; if (!XE_GT_WA(gt, 16023588340)) return; @@ -1107,6 +1109,9 @@ void xe_device_td_flush(struct xe_device *xe) return; root_gt = xe_root_mmio_gt(xe); + if (!root_gt) + return; + if (XE_GT_WA(root_gt, 16023588340)) { /* A transient flush is not sufficient: flush the L2 */ xe_device_l2_flush(xe);