]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/xe/guc: Move ARAT interrupts enabling to the upload step
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Wed, 19 Jun 2024 16:34:13 +0000 (18:34 +0200)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Thu, 20 Jun 2024 09:03:03 +0000 (11:03 +0200)
Even though ARAT interrupts are enabled by default, we still want
to keep the code that enables them. But instead doing that in the
CTB enabling step, move this code to the upload step, where we
already setup few other registers related to GuC.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240619163413.817-1-michal.wajdeczko@intel.com
drivers/gpu/drm/xe/xe_guc.c

index 7ecb509c87d7fb0514890d532253c052179f68e3..02c028d0e91b9c45133830cfea80d92251ebfa9a 100644 (file)
@@ -476,6 +476,9 @@ static void guc_prepare_xfer(struct xe_guc *guc)
        xe_mmio_write32(gt, GUC_SHIM_CONTROL, shim_flags);
 
        xe_mmio_write32(gt, GT_PM_CONFIG, GT_DOORBELL_ENABLE);
+
+       /* Make sure GuC receives ARAT interrupts */
+       xe_mmio_rmw32(gt, PMINTRMSK, ARAT_EXPIRED_INTRMSK, 0);
 }
 
 /*
@@ -865,9 +868,6 @@ int xe_guc_enable_communication(struct xe_guc *guc)
                guc_enable_irq(guc);
        }
 
-       xe_mmio_rmw32(guc_to_gt(guc), PMINTRMSK,
-                     ARAT_EXPIRED_INTRMSK, 0);
-
        err = xe_guc_ct_enable(&guc->ct);
        if (err)
                return err;