* [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