]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/xe/vf: Don't try to capture engine data unavailable to VF
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Tue, 13 Feb 2024 15:43:49 +0000 (16:43 +0100)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Tue, 13 Feb 2024 17:59:48 +0000 (18:59 +0100)
Don't capture engine ring registers as thoe are not available for
the VF driver.

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240213154355.1221-3-michal.wajdeczko@intel.com
drivers/gpu/drm/xe/xe_hw_engine.c

index 0d17e32d70c87d0feab5a853c2c88b36fa4febdc..b5e83ea172f3ffccf16470759ad19a71472ed4dd 100644 (file)
@@ -25,6 +25,7 @@
 #include "xe_reg_sr.h"
 #include "xe_rtp.h"
 #include "xe_sched_job.h"
+#include "xe_sriov.h"
 #include "xe_tuning.h"
 #include "xe_uc_fw.h"
 #include "xe_wa.h"
@@ -767,6 +768,10 @@ xe_hw_engine_snapshot_capture(struct xe_hw_engine *hwe)
                                                    hwe->domain);
        snapshot->mmio_base = hwe->mmio_base;
 
+       /* no more VF accessible data below this point */
+       if (IS_SRIOV_VF(gt_to_xe(hwe->gt)))
+               return snapshot;
+
        snapshot->reg.ring_execlist_status =
                hw_engine_mmio_read32(hwe, RING_EXECLIST_STATUS_LO(0));
        val = hw_engine_mmio_read32(hwe, RING_EXECLIST_STATUS_HI(0));