All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mika Kuoppala <mika.kuoppala@linux.intel.com>
To: intel-gfx@lists.freedesktop.org
Subject: [PATCH] drm/i915: Enable workaround for pixel shader dispatch hang
Date: Mon, 15 Apr 2019 17:38:48 +0300	[thread overview]
Message-ID: <20190415143848.8612-1-mika.kuoppala@linux.intel.com> (raw)
In-Reply-To: <20190415142122.533-1-mika.kuoppala@linux.intel.com>

Set chicken bits to workaround a possible pixel shader
dispatch hang.

v2: no need to filter out preprod skl (Ville, Chris)

Bspec: 14091, ID#0651
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 4 ++++
 drivers/gpu/drm/i915/intel_workarounds.c | 5 +++++
 2 files changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index c1c0f7ab03e9..499cc843443d 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8902,11 +8902,15 @@ enum {
 #define GEN7_ROW_CHICKEN2_GT2		_MMIO(0xf4f4)
 #define   DOP_CLOCK_GATING_DISABLE	(1 << 0)
 #define   PUSH_CONSTANT_DEREF_DISABLE	(1 << 8)
+#define   GEN8_DISABLE_RR_ARBITRATION	(1 << 1)
 #define   GEN11_TDL_CLOCK_GATING_FIX_DISABLE	(1 << 1)
 
 #define HSW_ROW_CHICKEN3		_MMIO(0xe49c)
 #define  HSW_ROW_CHICKEN3_L3_GLOBAL_ATOMICS_DISABLE    (1 << 6)
 
+#define GEN8_ROW_CHICKEN4		_MMIO(0xe48c)
+#define  GEN8_DISABLE_TDL_FIX		(1 << 3)
+
 #define HALF_SLICE_CHICKEN2		_MMIO(0xe180)
 #define   GEN8_ST_PO_DISABLE		(1 << 13)
 
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index ccaf63679435..89d8797c91be 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -294,6 +294,11 @@ static void gen9_ctx_workarounds_init(struct intel_engine_cs *engine)
 			  FLOW_CONTROL_ENABLE |
 			  PARTIAL_INSTRUCTION_SHOOTDOWN_DISABLE);
 
+	/* Bspec wa: 0651, disable rr arb and enable tdl fix */
+	WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
+			  GEN8_DISABLE_RR_ARBITRATION);
+	WA_CLR_BIT_MASKED(GEN8_ROW_CHICKEN4, GEN8_DISABLE_TDL_FIX);
+
 	/* Syncing dependencies between camera and graphics:skl,bxt,kbl */
 	if (!IS_COFFEELAKE(i915))
 		WA_SET_BIT_MASKED(HALF_SLICE_CHICKEN3,
-- 
2.17.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2019-04-15 14:39 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-15 14:21 [PATCH] drm/i915: Enable workaround for pixel shader dispatch hang Mika Kuoppala
2019-04-15 14:23 ` Chris Wilson
2019-04-15 14:25 ` Ville Syrjälä
2019-04-15 14:29   ` Chris Wilson
2019-04-15 14:34     ` Mika Kuoppala
2019-04-15 14:38 ` Mika Kuoppala [this message]
2019-04-15 14:45 ` Mika Kuoppala
2019-04-16  8:24   ` Chris Wilson
2019-04-16 13:26     ` Mika Kuoppala
2019-04-16 13:30       ` Chris Wilson
2019-04-15 15:43 ` ✗ Fi.CI.BAT: failure for drm/i915: Enable workaround for pixel shader dispatch hang (rev3) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190415143848.8612-1-mika.kuoppala@linux.intel.com \
    --to=mika.kuoppala@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.