[PATCH v10 8/8] drm/xe/eustall: Add workaround 22016596838 which applies to PVC.
Harish Chegondi
harish.chegondi at intel.com
Tue Feb 18 19:53:58 UTC 2025
Add PVC workaround 22016596838 that disables EU DOP gating
during EU stall sampling.
Signed-off-by: Harish Chegondi <harish.chegondi at intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit at intel.com>
---
drivers/gpu/drm/xe/xe_eu_stall.c | 10 ++++++++++
drivers/gpu/drm/xe/xe_wa_oob.rules | 1 +
2 files changed, 11 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_eu_stall.c b/drivers/gpu/drm/xe/xe_eu_stall.c
index f82e9e47c3fa..b94585bdf91c 100644
--- a/drivers/gpu/drm/xe/xe_eu_stall.c
+++ b/drivers/gpu/drm/xe/xe_eu_stall.c
@@ -9,6 +9,7 @@
#include <linux/types.h>
#include <drm/drm_drv.h>
+#include <generated/xe_wa_oob.h>
#include <uapi/drm/xe_drm.h>
#include "xe_bo.h"
@@ -22,6 +23,7 @@
#include "xe_observation.h"
#include "xe_pm.h"
#include "xe_trace.h"
+#include "xe_wa.h"
#include "regs/xe_eu_stall_regs.h"
#include "regs/xe_gt_regs.h"
@@ -615,6 +617,10 @@ static int xe_eu_stall_stream_enable(struct xe_eu_stall_data_stream *stream)
return -ETIMEDOUT;
}
+ if (XE_WA(gt, 22016596838))
+ xe_gt_mcr_multicast_write(gt, ROW_CHICKEN2,
+ _MASKED_BIT_ENABLE(DISABLE_DOP_GATING));
+
for_each_dss_steering(xecore, gt, group, instance) {
write_ptr_reg = xe_gt_mcr_unicast_read(gt, XEHPC_EUSTALL_REPORT, group, instance);
/* Clear any drop bits set and not cleared in the previous session. */
@@ -774,6 +780,10 @@ static int xe_eu_stall_disable_locked(struct xe_eu_stall_data_stream *stream)
cancel_delayed_work_sync(&stream->buf_poll_work);
+ if (XE_WA(gt, 22016596838))
+ xe_gt_mcr_multicast_write(gt, ROW_CHICKEN2,
+ _MASKED_BIT_DISABLE(DISABLE_DOP_GATING));
+
xe_force_wake_put(gt_to_fw(gt), XE_FW_RENDER);
xe_pm_runtime_put(gt_to_xe(gt));
diff --git a/drivers/gpu/drm/xe/xe_wa_oob.rules b/drivers/gpu/drm/xe/xe_wa_oob.rules
index 228436532282..8e2cae7f7135 100644
--- a/drivers/gpu/drm/xe/xe_wa_oob.rules
+++ b/drivers/gpu/drm/xe/xe_wa_oob.rules
@@ -5,6 +5,7 @@
22011391025 PLATFORM(DG2)
22012727170 SUBPLATFORM(DG2, G11)
22012727685 SUBPLATFORM(DG2, G11)
+22016596838 PLATFORM(PVC)
18020744125 PLATFORM(PVC)
1509372804 PLATFORM(PVC), GRAPHICS_STEP(A0, C0)
1409600907 GRAPHICS_VERSION_RANGE(1200, 1250)
--
2.48.1
More information about the Intel-xe
mailing list