public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones
@ 2014-10-28 18:33 Arun Siluvery
  2014-10-28 18:33 ` [PATCH 1/3] drm/i915/chv: Remove pre-production workarounds Arun Siluvery
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Arun Siluvery @ 2014-10-28 18:33 UTC (permalink / raw)
  To: intel-gfx

The patches in this series adds two new workarounds for CHV and
removes pre-production ones.

Based on review comments from Ville, add/remove patches are split-up
which helps in reverting them if required.

The initial patch can be found at,
https://patchwork.kernel.org/patch/5178021/

Arun Siluvery (3):
  drm/i915/chv: Remove pre-production workarounds
  drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a
  drm/i915/chv: Add new workarounds for chv

 drivers/gpu/drm/i915/i915_reg.h         |  1 +
 drivers/gpu/drm/i915/intel_pm.c         | 12 ------------
 drivers/gpu/drm/i915/intel_ringbuffer.c | 22 +++++++++++-----------
 3 files changed, 12 insertions(+), 23 deletions(-)

-- 
2.1.2

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] drm/i915/chv: Remove pre-production workarounds
  2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
@ 2014-10-28 18:33 ` Arun Siluvery
  2014-10-28 18:33 ` [PATCH 2/3] drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a Arun Siluvery
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Arun Siluvery @ 2014-10-28 18:33 UTC (permalink / raw)
  To: intel-gfx

-WaDisableDopClockGating:chv
-WaDisableSamplerPowerBypass:chv
-WaDisableGunitClockGating:chv
-WaDisableFfDopClockGating:chv
-WaDisableDopClockGating:chv

v2: Remove pre-production WA instead of restricting them
based on revision id (Ville)

For: VIZ-4090
Signed-off-by: Arun Siluvery <arun.siluvery@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c         | 12 ------------
 drivers/gpu/drm/i915/intel_ringbuffer.c |  8 --------
 2 files changed, 20 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index 7a69eba..93db25f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -5944,18 +5944,6 @@ static void cherryview_init_clock_gating(struct drm_device *dev)
 	/* WaDisableSDEUnitClockGating:chv */
 	I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) |
 		   GEN8_SDEUNIT_CLOCK_GATE_DISABLE);
-
-	/* WaDisableGunitClockGating:chv (pre-production hw) */
-	I915_WRITE(VLV_GUNIT_CLOCK_GATE, I915_READ(VLV_GUNIT_CLOCK_GATE) |
-		   GINT_DIS);
-
-	/* WaDisableFfDopClockGating:chv (pre-production hw) */
-	I915_WRITE(GEN6_RC_SLEEP_PSMI_CONTROL,
-		   _MASKED_BIT_ENABLE(GEN8_FF_DOP_CLOCK_GATE_DISABLE));
-
-	/* WaDisableDopClockGating:chv (pre-production hw) */
-	I915_WRITE(GEN6_UCGCTL1, I915_READ(GEN6_UCGCTL1) |
-		   GEN6_EU_TCUNIT_CLOCK_GATE_DISABLE);
 }
 
 static void g4x_init_clock_gating(struct drm_device *dev)
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index a8f72e8..dae7d4b 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -795,14 +795,6 @@ static int chv_init_workarounds(struct intel_engine_cs *ring)
 	WA_SET_BIT_MASKED(GEN8_ROW_CHICKEN,
 		  STALL_DOP_GATING_DISABLE);
 
-	/* WaDisableDopClockGating:chv (pre-production hw) */
-	WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
-		  DOP_CLOCK_GATING_DISABLE);
-
-	/* WaDisableSamplerPowerBypass:chv (pre-production hw) */
-	WA_SET_BIT_MASKED(HALF_SLICE_CHICKEN3,
-		  GEN8_SAMPLER_POWER_BYPASS_DIS);
-
 	return 0;
 }
 
-- 
2.1.2

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a
  2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
  2014-10-28 18:33 ` [PATCH 1/3] drm/i915/chv: Remove pre-production workarounds Arun Siluvery
@ 2014-10-28 18:33 ` Arun Siluvery
  2014-10-28 18:33 ` [PATCH 3/3] drm/i915/chv: Add new workarounds for chv Arun Siluvery
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Arun Siluvery @ 2014-10-28 18:33 UTC (permalink / raw)
  To: intel-gfx

WaDisablePartialInstShootdown:chv and
WaDisableThreadStallDopClockGating:chv are related to the same
register so combine them.

Signed-off-by: Arun Siluvery <arun.siluvery@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_ringbuffer.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index dae7d4b..4ef5825 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -788,12 +788,10 @@ static int chv_init_workarounds(struct intel_engine_cs *ring)
 	struct drm_i915_private *dev_priv = dev->dev_private;
 
 	/* WaDisablePartialInstShootdown:chv */
-	WA_SET_BIT_MASKED(GEN8_ROW_CHICKEN,
-		  PARTIAL_INSTRUCTION_SHOOTDOWN_DISABLE);
-
 	/* WaDisableThreadStallDopClockGating:chv */
 	WA_SET_BIT_MASKED(GEN8_ROW_CHICKEN,
-		  STALL_DOP_GATING_DISABLE);
+			  PARTIAL_INSTRUCTION_SHOOTDOWN_DISABLE |
+			  STALL_DOP_GATING_DISABLE);
 
 	return 0;
 }
-- 
2.1.2

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] drm/i915/chv: Add new workarounds for chv
  2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
  2014-10-28 18:33 ` [PATCH 1/3] drm/i915/chv: Remove pre-production workarounds Arun Siluvery
  2014-10-28 18:33 ` [PATCH 2/3] drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a Arun Siluvery
@ 2014-10-28 18:33 ` Arun Siluvery
  2014-10-30 13:42 ` [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Siluvery, Arun
  2014-11-07 12:21 ` Ville Syrjälä
  4 siblings, 0 replies; 7+ messages in thread
From: Arun Siluvery @ 2014-10-28 18:33 UTC (permalink / raw)
  To: intel-gfx

+WaForceEnableNonCoherent:chv
+WaHdcDisableFetchWhenMasked:chv

For: VIZ-4090
Signed-off-by: Arun Siluvery <arun.siluvery@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h         |  1 +
 drivers/gpu/drm/i915/intel_ringbuffer.c | 10 ++++++++++
 2 files changed, 11 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 77fce96..9d39700 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -5024,6 +5024,7 @@ enum punit_power_well {
 /* GEN8 chicken */
 #define HDC_CHICKEN0				0x7300
 #define  HDC_FORCE_NON_COHERENT			(1<<4)
+#define  HDC_DONOT_FETCH_MEM_WHEN_MASKED	(1<<11)
 #define  HDC_FENCE_DEST_SLM_DISABLE		(1<<14)
 
 /* WaCatErrorRejectionIssue */
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 4ef5825..368b20a 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -793,6 +793,16 @@ static int chv_init_workarounds(struct intel_engine_cs *ring)
 			  PARTIAL_INSTRUCTION_SHOOTDOWN_DISABLE |
 			  STALL_DOP_GATING_DISABLE);
 
+	/* Use Force Non-Coherent whenever executing a 3D context. This is a
+	 * workaround for a possible hang in the unlikely event a TLB
+	 * invalidation occurs during a PSD flush.
+	 */
+	/* WaForceEnableNonCoherent:chv */
+	/* WaHdcDisableFetchWhenMasked:chv */
+	WA_SET_BIT_MASKED(HDC_CHICKEN0,
+			  HDC_FORCE_NON_COHERENT |
+			  HDC_DONOT_FETCH_MEM_WHEN_MASKED);
+
 	return 0;
 }
 
-- 
2.1.2

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

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones
  2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
                   ` (2 preceding siblings ...)
  2014-10-28 18:33 ` [PATCH 3/3] drm/i915/chv: Add new workarounds for chv Arun Siluvery
@ 2014-10-30 13:42 ` Siluvery, Arun
  2014-11-07 12:21 ` Ville Syrjälä
  4 siblings, 0 replies; 7+ messages in thread
From: Siluvery, Arun @ 2014-10-30 13:42 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: Intel-gfx@lists.freedesktop.org

On 28/10/2014 18:33, Arun Siluvery wrote:
> The patches in this series adds two new workarounds for CHV and
> removes pre-production ones.
>
> Based on review comments from Ville, add/remove patches are split-up
> which helps in reverting them if required.
>
> The initial patch can be found at,
> https://patchwork.kernel.org/patch/5178021/
>
Hi Ville,

Patches are split-up as you suggested.
Please let me know if further changes are required.

regards
Arun

> Arun Siluvery (3):
>    drm/i915/chv: Remove pre-production workarounds
>    drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a
>    drm/i915/chv: Add new workarounds for chv
>
>   drivers/gpu/drm/i915/i915_reg.h         |  1 +
>   drivers/gpu/drm/i915/intel_pm.c         | 12 ------------
>   drivers/gpu/drm/i915/intel_ringbuffer.c | 22 +++++++++++-----------
>   3 files changed, 12 insertions(+), 23 deletions(-)
>

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones
  2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
                   ` (3 preceding siblings ...)
  2014-10-30 13:42 ` [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Siluvery, Arun
@ 2014-11-07 12:21 ` Ville Syrjälä
  2014-11-11 10:13   ` Daniel Vetter
  4 siblings, 1 reply; 7+ messages in thread
From: Ville Syrjälä @ 2014-11-07 12:21 UTC (permalink / raw)
  To: Arun Siluvery; +Cc: intel-gfx

On Tue, Oct 28, 2014 at 06:33:11PM +0000, Arun Siluvery wrote:
> The patches in this series adds two new workarounds for CHV and
> removes pre-production ones.
> 
> Based on review comments from Ville, add/remove patches are split-up
> which helps in reverting them if required.
> 
> The initial patch can be found at,
> https://patchwork.kernel.org/patch/5178021/
> 
> Arun Siluvery (3):
>   drm/i915/chv: Remove pre-production workarounds
>   drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a
>   drm/i915/chv: Add new workarounds for chv

Looks good. For the series:
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

> 
>  drivers/gpu/drm/i915/i915_reg.h         |  1 +
>  drivers/gpu/drm/i915/intel_pm.c         | 12 ------------
>  drivers/gpu/drm/i915/intel_ringbuffer.c | 22 +++++++++++-----------
>  3 files changed, 12 insertions(+), 23 deletions(-)
> 
> -- 
> 2.1.2
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones
  2014-11-07 12:21 ` Ville Syrjälä
@ 2014-11-11 10:13   ` Daniel Vetter
  0 siblings, 0 replies; 7+ messages in thread
From: Daniel Vetter @ 2014-11-11 10:13 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: intel-gfx

On Fri, Nov 07, 2014 at 02:21:18PM +0200, Ville Syrjälä wrote:
> On Tue, Oct 28, 2014 at 06:33:11PM +0000, Arun Siluvery wrote:
> > The patches in this series adds two new workarounds for CHV and
> > removes pre-production ones.
> > 
> > Based on review comments from Ville, add/remove patches are split-up
> > which helps in reverting them if required.
> > 
> > The initial patch can be found at,
> > https://patchwork.kernel.org/patch/5178021/
> > 
> > Arun Siluvery (3):
> >   drm/i915/chv: Remove pre-production workarounds
> >   drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a
> >   drm/i915/chv: Add new workarounds for chv
> 
> Looks good. For the series:
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

All three merged, thanks for patches and review.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-11-11 10:13 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-28 18:33 [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Arun Siluvery
2014-10-28 18:33 ` [PATCH 1/3] drm/i915/chv: Remove pre-production workarounds Arun Siluvery
2014-10-28 18:33 ` [PATCH 2/3] drm/i915/chv: Combine GEN8_ROW_CHICKEN w/a Arun Siluvery
2014-10-28 18:33 ` [PATCH 3/3] drm/i915/chv: Add new workarounds for chv Arun Siluvery
2014-10-30 13:42 ` [PATCH 0/3] drm/i915/chv: Add new WA and remove pre-production ones Siluvery, Arun
2014-11-07 12:21 ` Ville Syrjälä
2014-11-11 10:13   ` Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox