All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/11] Workarounds for Icelake
@ 2018-05-25 22:05 Oscar Mateo
  2018-05-25 22:05 ` [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating Oscar Mateo
                   ` (13 more replies)
  0 siblings, 14 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

The remaining WA patches that haven't been merged to date, plus
two new ones (WaEnablePreemptionGranularityControlByUMD &
Wa_1406463099).

Oscar Mateo (11):
  drm/i915/icl: WaDisableImprovedTdlClkGating
  drm/i915/icl: WaEnableStateCacheRedirectToCS
  drm/i915/icl: Wa_2006665173
  drm/i915/icl: WaEnableFloatBlendOptimization
  drm/i915/icl: WaSendPushConstantsFromMMIO
  drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2
  drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7
  drm/i915/icl: WaAllowUmdWriteTRTTRootTable
  drm/i915/icl: WaAllowUMDToModifySamplerMode
  drm/i915/icl: WaEnablePreemptionGranularityControlByUMD
  drm/i915/icl: Wa_1406463099

 drivers/gpu/drm/i915/i915_reg.h          | 37 +++++++++++++++++++--------
 drivers/gpu/drm/i915/intel_workarounds.c | 44 ++++++++++++++++++++++++++++++++
 2 files changed, 70 insertions(+), 11 deletions(-)

-- 
1.9.1

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

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

* [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-29  8:51   ` Mika Kuoppala
  2018-05-25 22:05 ` [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS Oscar Mateo
                   ` (12 subsequent siblings)
  13 siblings, 1 reply; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Revert to the legacy implementation.

v2: GEN7_ROW_CHICKEN2 is masked
v3:
  - Rebased
  - Renamed to Wa_2006611047
  - A0 and B0 only
v4:
  - Add spaces around '<<' (and fix the surrounding code as well)
  - Mark the WA as pre-prod
v5: Rebased on top of the WA refactoring
v6: Added References (Mika)
v7: Fixed in B0

References: HSDES#2006611047
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 5 +++--
 drivers/gpu/drm/i915/intel_workarounds.c | 7 +++++++
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 6953419..4eb159f 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8328,8 +8328,9 @@ enum {
 
 #define GEN7_ROW_CHICKEN2		_MMIO(0xe4f4)
 #define GEN7_ROW_CHICKEN2_GT2		_MMIO(0xf4f4)
-#define   DOP_CLOCK_GATING_DISABLE	(1<<0)
-#define   PUSH_CONSTANT_DEREF_DISABLE	(1<<8)
+#define   DOP_CLOCK_GATING_DISABLE	(1 << 0)
+#define   PUSH_CONSTANT_DEREF_DISABLE	(1 << 8)
+#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)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index cea5710..04aa885 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -463,6 +463,13 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
 	 */
 	WA_SET_BIT_MASKED(ICL_HDC_MODE, HDC_FORCE_NON_COHERENT);
 
+	/* Wa_2006611047:icl (pre-prod)
+	 * Formerly known as WaDisableImprovedTdlClkGating
+	 */
+	if (IS_ICL_REVID(dev_priv, ICL_REVID_A0, ICL_REVID_A0))
+		WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
+				  GEN11_TDL_CLOCK_GATING_FIX_DISABLE);
+
 	return 0;
 }
 
-- 
1.9.1

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

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

* [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
  2018-05-25 22:05 ` [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-29  9:15   ` Mika Kuoppala
  2018-05-25 22:05 ` [PATCH 03/11] drm/i915/icl: Wa_2006665173 Oscar Mateo
                   ` (11 subsequent siblings)
  13 siblings, 1 reply; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Redirects the state cache to the CS Command buffer section for
performance reasons.

v2: Rebased
v3: Rebased on top of the WA refactoring
v3: Added References (Mika)

References: HSDES#1604325460
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 1 +
 drivers/gpu/drm/i915/intel_workarounds.c | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 4eb159f..924b9a6 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -7227,6 +7227,7 @@ enum {
 #define  DISABLE_PIXEL_MASK_CAMMING		(1<<14)
 
 #define GEN9_SLICE_COMMON_ECO_CHICKEN1		_MMIO(0x731c)
+#define   GEN11_STATE_CACHE_REDIRECT_TO_CS	(1 << 11)
 
 #define GEN7_L3SQCREG1				_MMIO(0xB010)
 #define  VLV_B0_WA_L3SQCREG1_VALUE		0x00D30000
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 04aa885..1d29803 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -470,6 +470,10 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
 		WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
 				  GEN11_TDL_CLOCK_GATING_FIX_DISABLE);
 
+	/* WaEnableStateCacheRedirectToCS:icl */
+	WA_SET_BIT_MASKED(GEN9_SLICE_COMMON_ECO_CHICKEN1,
+			  GEN11_STATE_CACHE_REDIRECT_TO_CS);
+
 	return 0;
 }
 
-- 
1.9.1

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

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

* [PATCH 03/11] drm/i915/icl: Wa_2006665173
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
  2018-05-25 22:05 ` [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating Oscar Mateo
  2018-05-25 22:05 ` [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-29 10:37   ` Mika Kuoppala
  2018-05-25 22:05 ` [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization Oscar Mateo
                   ` (10 subsequent siblings)
  13 siblings, 1 reply; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Disable blend embellishment in RCC.

Also, some other registers style fixed in passing.

v2: Rebased on top of the WA refactoring
v3: Added References (Mika)
v4:
  - Fixed in B0
  - Mentioned style fixes in commit message

References: HSDES#2006665173
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 18 +++++++++++-------
 drivers/gpu/drm/i915/intel_workarounds.c |  5 +++++
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 924b9a6..6e88c6b 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -7211,13 +7211,17 @@ enum {
 
 /* GEN7 chicken */
 #define GEN7_COMMON_SLICE_CHICKEN1		_MMIO(0x7010)
-# define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC	((1<<10) | (1<<26))
-# define GEN9_RHWO_OPTIMIZATION_DISABLE		(1<<14)
-#define COMMON_SLICE_CHICKEN2			_MMIO(0x7014)
-# define GEN9_PBE_COMPRESSED_HASH_SELECTION	(1<<13)
-# define GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE (1<<12)
-# define GEN8_SBE_DISABLE_REPLAY_BUF_OPTIMIZATION (1<<8)
-# define GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE	(1<<0)
+  #define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC	((1 << 10) | (1 << 26))
+  #define GEN9_RHWO_OPTIMIZATION_DISABLE	(1 << 14)
+
+#define COMMON_SLICE_CHICKEN2					_MMIO(0x7014)
+  #define GEN9_PBE_COMPRESSED_HASH_SELECTION			(1 << 13)
+  #define GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE	(1 << 12)
+  #define GEN8_SBE_DISABLE_REPLAY_BUF_OPTIMIZATION		(1 << 8)
+  #define GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE			(1 << 0)
+
+#define GEN11_COMMON_SLICE_CHICKEN3		_MMIO(0x7304)
+  #define GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC	(1 << 11)
 
 #define HIZ_CHICKEN					_MMIO(0x7018)
 # define CHV_HZ_8X8_MODE_IN_1X				(1<<15)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 1d29803..33a1a0c 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -474,6 +474,11 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
 	WA_SET_BIT_MASKED(GEN9_SLICE_COMMON_ECO_CHICKEN1,
 			  GEN11_STATE_CACHE_REDIRECT_TO_CS);
 
+	/* Wa_2006665173:icl (pre-prod) */
+	if (IS_ICL_REVID(dev_priv, ICL_REVID_A0, ICL_REVID_A0))
+		WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
+				  GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
+
 	return 0;
 }
 
-- 
1.9.1

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

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

* [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (2 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 03/11] drm/i915/icl: Wa_2006665173 Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-29 12:07   ` Mika Kuoppala
  2018-07-23 12:03   ` Chris Wilson
  2018-05-25 22:05 ` [PATCH 05/11] drm/i915/icl: WaSendPushConstantsFromMMIO Oscar Mateo
                   ` (9 subsequent siblings)
  13 siblings, 2 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Enables blend optimization for floating point RTs

v2: Rebased on top of the WA refactoring
v3: Added References (Mika)

References: HSDES#1406393558
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 3 +++
 drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 6e88c6b..f123c3e 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -2663,6 +2663,9 @@ enum i915_power_well_id {
 #define   GEN8_4x4_STC_OPTIMIZATION_DISABLE	(1<<6)
 #define   GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE	(1<<1)
 
+#define GEN10_CACHE_MODE_SS			_MMIO(0xe420)
+#define   FLOAT_BLEND_OPTIMIZATION_ENABLE	(1 << 4)
+
 #define GEN6_BLITTER_ECOSKPD	_MMIO(0x221d0)
 #define   GEN6_BLITTER_LOCK_SHIFT			16
 #define   GEN6_BLITTER_FBC_NOTIFY			(1<<3)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 33a1a0c..e9c00b0 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -479,6 +479,9 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
 		WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
 				  GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
 
+	/* WaEnableFloatBlendOptimization:icl */
+	WA_SET_BIT_MASKED(GEN10_CACHE_MODE_SS, FLOAT_BLEND_OPTIMIZATION_ENABLE);
+
 	return 0;
 }
 
-- 
1.9.1

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

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

* [PATCH 05/11] drm/i915/icl: WaSendPushConstantsFromMMIO
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (3 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 06/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2 Oscar Mateo
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Allows UMDs to set 'Disable Gather at Set Shader Common Slice'.

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it...

v2: Rebased
v3: Rebased on top of the WA refactoring
v4: Rebased on top of the WA whitelist reg refactoring (Michel)
v5: Added References (Mika)

References: HSDES#1405764967
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/intel_workarounds.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index e9c00b0..804de04 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -963,6 +963,8 @@ static void cnl_whitelist_build(struct whitelist *w)
 
 static void icl_whitelist_build(struct whitelist *w)
 {
+	/* WaSendPushConstantsFromMMIO:icl */
+	whitelist_reg(w, COMMON_SLICE_CHICKEN2);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 06/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (4 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 05/11] drm/i915/icl: WaSendPushConstantsFromMMIO Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 07/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7 Oscar Mateo
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Required to dinamically set 'Small PL Lossless Fix Enable'

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it.

v2: For whatever reason, this ended up in KBL (??!!)
v3: Rebased on top of the WA refactoring
v4: Rebased on top of whitelist reg refactoring (Michel)
v5: Added References (Mika)

References: HSDES#1804860039
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 804de04..e173e17 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -965,6 +965,9 @@ static void icl_whitelist_build(struct whitelist *w)
 {
 	/* WaSendPushConstantsFromMMIO:icl */
 	whitelist_reg(w, COMMON_SLICE_CHICKEN2);
+
+	/* WaAllowUMDToModifyHalfSliceChicken2:icl */
+	whitelist_reg(w, HALF_SLICE_CHICKEN2);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 07/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (5 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 06/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2 Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 08/11] drm/i915/icl: WaAllowUmdWriteTRTTRootTable Oscar Mateo
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Required to dinamically set 'Trilinear Filter Quality Mode'

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it.

v2: For whatever reason, this ended up in KBL (??!!)
v3: Rebased on top of the WA refactoring
v4: Rebased on top of the whitelist reg refactoring (Michel)
v5: Added References (Mika)

References: HSDES#1804860157
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index e173e17..cce3e3f 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -968,6 +968,9 @@ static void icl_whitelist_build(struct whitelist *w)
 
 	/* WaAllowUMDToModifyHalfSliceChicken2:icl */
 	whitelist_reg(w, HALF_SLICE_CHICKEN2);
+
+	/* WaAllowUMDToModifyHalfSliceChicken7:icl */
+	whitelist_reg(w, GEN9_HALF_SLICE_CHICKEN7);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 08/11] drm/i915/icl: WaAllowUmdWriteTRTTRootTable
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (6 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 07/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7 Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 09/11] drm/i915/icl: WaAllowUMDToModifySamplerMode Oscar Mateo
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Required for TR-TT (Tiled Resource Translation Table) support.

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it.

v2: For whatever reason, this ended up in KBL (??!!)
v3: Rebased on top of the WA refactoring
v4: Rebased on top of whitelist reg refactoring (Michel)

Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 3 +++
 drivers/gpu/drm/i915/intel_workarounds.c | 4 ++++
 2 files changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index f123c3e..1fb86bd 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8299,6 +8299,9 @@ enum {
 #define GAMW_ECO_DEV_RW_IA_REG			_MMIO(0x4080)
 #define   GAMW_ECO_DEV_CTX_RELOAD_DISABLE	(1 << 7)
 
+#define TR_VA_TTL3_PTR_DW0		_MMIO(0x4DE0)
+#define TR_VA_TTL3_PTR_DW1		_MMIO(0x4DE4)
+
 /* IVYBRIDGE DPF */
 #define GEN7_L3CDERRST1(slice)		_MMIO(0xB008 + (slice) * 0x200) /* L3CD Error Status 1 */
 #define   GEN7_L3CDERRST1_ROW_MASK	(0x7ff<<14)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index cce3e3f..9d6b550 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -971,6 +971,10 @@ static void icl_whitelist_build(struct whitelist *w)
 
 	/* WaAllowUMDToModifyHalfSliceChicken7:icl */
 	whitelist_reg(w, GEN9_HALF_SLICE_CHICKEN7);
+
+	/* WaAllowUmdWriteTRTTRootTable:icl */
+	whitelist_reg(w, TR_VA_TTL3_PTR_DW0);
+	whitelist_reg(w, TR_VA_TTL3_PTR_DW1);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 09/11] drm/i915/icl: WaAllowUMDToModifySamplerMode
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (7 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 08/11] drm/i915/icl: WaAllowUmdWriteTRTTRootTable Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 10/11] drm/i915/icl: WaEnablePreemptionGranularityControlByUMD Oscar Mateo
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Required for Bindless samplers.

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it.

v2: Rebased on top of the WA refactoring (Michel)
v3: Added References (Mika)

References: HSDES#1404695891
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 2 ++
 drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
 2 files changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 1fb86bd..42835d79 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8302,6 +8302,8 @@ enum {
 #define TR_VA_TTL3_PTR_DW0		_MMIO(0x4DE0)
 #define TR_VA_TTL3_PTR_DW1		_MMIO(0x4DE4)
 
+#define GEN10_SAMPLER_MODE		_MMIO(0xE18C)
+
 /* IVYBRIDGE DPF */
 #define GEN7_L3CDERRST1(slice)		_MMIO(0xB008 + (slice) * 0x200) /* L3CD Error Status 1 */
 #define   GEN7_L3CDERRST1_ROW_MASK	(0x7ff<<14)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 9d6b550..912f8b5 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -975,6 +975,9 @@ static void icl_whitelist_build(struct whitelist *w)
 	/* WaAllowUmdWriteTRTTRootTable:icl */
 	whitelist_reg(w, TR_VA_TTL3_PTR_DW0);
 	whitelist_reg(w, TR_VA_TTL3_PTR_DW1);
+
+	/* WaAllowUMDToModifySamplerMode:icl */
+	whitelist_reg(w, GEN10_SAMPLER_MODE);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 10/11] drm/i915/icl: WaEnablePreemptionGranularityControlByUMD
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (8 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 09/11] drm/i915/icl: WaAllowUMDToModifySamplerMode Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-25 22:05 ` [PATCH 11/11] drm/i915/icl: Wa_1406463099 Oscar Mateo
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Apparently HW did not whitelist this register properly.

Do Linux UMDs make use of this? This change has been security
reviewed and the whitelisting approved. Virtualization of other
OSes could certainly use it.

References: HSDES#1305642430
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 912f8b5..474e498 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -978,6 +978,9 @@ static void icl_whitelist_build(struct whitelist *w)
 
 	/* WaAllowUMDToModifySamplerMode:icl */
 	whitelist_reg(w, GEN10_SAMPLER_MODE);
+
+	/* WaEnablePreemptionGranularityControlByUMD:icl */
+	whitelist_reg(w, GEN8_CS_CHICKEN1);
 }
 
 static struct whitelist *whitelist_build(struct intel_engine_cs *engine,
-- 
1.9.1

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

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

* [PATCH 11/11] drm/i915/icl: Wa_1406463099
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (9 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 10/11] drm/i915/icl: WaEnablePreemptionGranularityControlByUMD Oscar Mateo
@ 2018-05-25 22:05 ` Oscar Mateo
  2018-05-29 12:40   ` Mika Kuoppala
  2018-05-25 22:57 ` ✓ Fi.CI.BAT: success for Workarounds for Icelake (rev4) Patchwork
                   ` (2 subsequent siblings)
  13 siblings, 1 reply; 23+ messages in thread
From: Oscar Mateo @ 2018-05-25 22:05 UTC (permalink / raw)
  To: intel-gfx

Prevents an error in the GAM unit. Also known as WaGamTlbPendError

References: HSDES#1406463099
References: HSDES#1406465643
Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h          | 5 +++--
 drivers/gpu/drm/i915/intel_workarounds.c | 7 +++++++
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 42835d79..8a18447 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -2306,8 +2306,9 @@ enum i915_power_well_id {
 #define   GAMW_ECO_ENABLE_64K_IPS_FIELD 0xF
 
 #define GAMT_CHKN_BIT_REG	_MMIO(0x4ab8)
-#define   GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING	(1<<28)
-#define   GAMT_CHKN_DISABLE_I2M_CYCLE_ON_WR_PORT	(1<<24)
+#define   GAMT_CHKN_DISABLE_L3_COH_PIPE			(1 << 31)
+#define   GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING	(1 << 28)
+#define   GAMT_CHKN_DISABLE_I2M_CYCLE_ON_WR_PORT	(1 << 24)
 
 #if 0
 #define PRB0_TAIL	_MMIO(0x2030)
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index 474e498..77929df 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -859,6 +859,13 @@ static void icl_gt_workarounds_apply(struct drm_i915_private *dev_priv)
 		   PMFLUSHDONE_LNICRSDROP |
 		   PMFLUSH_GAPL3UNBLOCK |
 		   PMFLUSHDONE_LNEBLK);
+
+	/* Wa_1406463099:icl
+	 * Formerly known as WaGamTlbPendError
+	 */
+	I915_WRITE(GAMT_CHKN_BIT_REG,
+		   I915_READ(GAMT_CHKN_BIT_REG) |
+		   GAMT_CHKN_DISABLE_L3_COH_PIPE);
 }
 
 void intel_gt_workarounds_apply(struct drm_i915_private *dev_priv)
-- 
1.9.1

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

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

* ✓ Fi.CI.BAT: success for Workarounds for Icelake (rev4)
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (10 preceding siblings ...)
  2018-05-25 22:05 ` [PATCH 11/11] drm/i915/icl: Wa_1406463099 Oscar Mateo
@ 2018-05-25 22:57 ` Patchwork
  2018-05-26  9:37 ` ✓ Fi.CI.IGT: " Patchwork
  2018-05-29 13:03 ` [PATCH v4 00/11] Workarounds for Icelake Mika Kuoppala
  13 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2018-05-25 22:57 UTC (permalink / raw)
  To: Oscar Mateo; +Cc: intel-gfx

== Series Details ==

Series: Workarounds for Icelake (rev4)
URL   : https://patchwork.freedesktop.org/series/42055/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4246 -> Patchwork_9131 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/42055/revisions/4/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9131 that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_exec_suspend@basic-s4-devices:
      fi-cfl-s3:          PASS -> DMESG-WARN (fdo#104056)

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-cnl-psr:         PASS -> DMESG-WARN (fdo#104951)

    
  fdo#104056 https://bugs.freedesktop.org/show_bug.cgi?id=104056
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951


== Participating hosts (44 -> 39) ==

  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4246 -> Patchwork_9131

  CI_DRM_4246: 5195e857106a3836274e612b26d9d7c6289d8874 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4499: f560ae5a464331f03f0a669ed46b8c9e56526187 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9131: 2eb0165a562e751ffc7ea1005b6b8d0ad5680476 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

2eb0165a562e drm/i915/icl: Wa_1406463099
3ef3f3bfbd0c drm/i915/icl: WaEnablePreemptionGranularityControlByUMD
470da3adf07f drm/i915/icl: WaAllowUMDToModifySamplerMode
8145c9ad6df6 drm/i915/icl: WaAllowUmdWriteTRTTRootTable
ee230c83ae4f drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7
2c075b6f07a4 drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2
417bfa1c01d2 drm/i915/icl: WaSendPushConstantsFromMMIO
fab7171add4b drm/i915/icl: WaEnableFloatBlendOptimization
2727cb155b10 drm/i915/icl: Wa_2006665173
8cef56bcdc8c drm/i915/icl: WaEnableStateCacheRedirectToCS
61a5eb6c1851 drm/i915/icl: WaDisableImprovedTdlClkGating

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9131/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.IGT: success for Workarounds for Icelake (rev4)
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (11 preceding siblings ...)
  2018-05-25 22:57 ` ✓ Fi.CI.BAT: success for Workarounds for Icelake (rev4) Patchwork
@ 2018-05-26  9:37 ` Patchwork
  2018-05-29 13:03 ` [PATCH v4 00/11] Workarounds for Icelake Mika Kuoppala
  13 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2018-05-26  9:37 UTC (permalink / raw)
  To: Oscar Mateo; +Cc: intel-gfx

== Series Details ==

Series: Workarounds for Icelake (rev4)
URL   : https://patchwork.freedesktop.org/series/42055/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4246_full -> Patchwork_9131_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9131_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9131_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://patchwork.freedesktop.org/api/1.0/series/42055/revisions/4/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9131_full:

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_schedule@deep-blt:
      shard-kbl:          SKIP -> PASS +1

    igt@gem_mocs_settings@mocs-rc6-ctx-dirty-render:
      shard-kbl:          PASS -> SKIP

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-pwrite:
      shard-snb:          PASS -> SKIP +1

    
== Known issues ==

  Here are the changes found in Patchwork_9131_full that come from known issues:

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_gtt:
      shard-glk:          PASS -> INCOMPLETE (k.org#198133, fdo#103359)

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
      shard-glk:          PASS -> FAIL (fdo#105703)

    igt@kms_flip@2x-plain-flip-fb-recreate:
      shard-hsw:          PASS -> FAIL (fdo#103928)

    igt@kms_flip@flip-vs-expired-vblank-interruptible:
      shard-glk:          PASS -> FAIL (fdo#102887, fdo#105363)

    igt@kms_flip@plain-flip-fb-recreate-interruptible:
      shard-glk:          PASS -> FAIL (fdo#100368) +1

    igt@kms_flip_tiling@flip-x-tiled:
      shard-glk:          PASS -> FAIL (fdo#104724)

    igt@kms_flip_tiling@flip-y-tiled:
      shard-glk:          PASS -> FAIL (fdo#103822, fdo#104724)

    
    ==== Possible fixes ====

    igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
      shard-glk:          FAIL (fdo#105703) -> PASS

    igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
      shard-glk:          FAIL (fdo#105454, fdo#106509) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#103928 https://bugs.freedesktop.org/show_bug.cgi?id=103928
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4246 -> Patchwork_9131

  CI_DRM_4246: 5195e857106a3836274e612b26d9d7c6289d8874 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4499: f560ae5a464331f03f0a669ed46b8c9e56526187 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9131: 2eb0165a562e751ffc7ea1005b6b8d0ad5680476 @ git://anongit.freedesktop.org/gfx-ci/linux

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9131/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating
  2018-05-25 22:05 ` [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating Oscar Mateo
@ 2018-05-29  8:51   ` Mika Kuoppala
  0 siblings, 0 replies; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29  8:51 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> Revert to the legacy implementation.
>
> v2: GEN7_ROW_CHICKEN2 is masked
> v3:
>   - Rebased
>   - Renamed to Wa_2006611047
>   - A0 and B0 only
> v4:
>   - Add spaces around '<<' (and fix the surrounding code as well)
>   - Mark the WA as pre-prod
> v5: Rebased on top of the WA refactoring
> v6: Added References (Mika)
> v7: Fixed in B0
>
> References: HSDES#2006611047
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>


Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 5 +++--
>  drivers/gpu/drm/i915/intel_workarounds.c | 7 +++++++
>  2 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 6953419..4eb159f 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -8328,8 +8328,9 @@ enum {
>  
>  #define GEN7_ROW_CHICKEN2		_MMIO(0xe4f4)
>  #define GEN7_ROW_CHICKEN2_GT2		_MMIO(0xf4f4)
> -#define   DOP_CLOCK_GATING_DISABLE	(1<<0)
> -#define   PUSH_CONSTANT_DEREF_DISABLE	(1<<8)
> +#define   DOP_CLOCK_GATING_DISABLE	(1 << 0)
> +#define   PUSH_CONSTANT_DEREF_DISABLE	(1 << 8)
> +#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)
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index cea5710..04aa885 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -463,6 +463,13 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>  	 */
>  	WA_SET_BIT_MASKED(ICL_HDC_MODE, HDC_FORCE_NON_COHERENT);
>  
> +	/* Wa_2006611047:icl (pre-prod)
> +	 * Formerly known as WaDisableImprovedTdlClkGating
> +	 */
> +	if (IS_ICL_REVID(dev_priv, ICL_REVID_A0, ICL_REVID_A0))
> +		WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
> +				  GEN11_TDL_CLOCK_GATING_FIX_DISABLE);
> +
>  	return 0;
>  }
>  
> -- 
> 1.9.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS
  2018-05-25 22:05 ` [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS Oscar Mateo
@ 2018-05-29  9:15   ` Mika Kuoppala
  0 siblings, 0 replies; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29  9:15 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> Redirects the state cache to the CS Command buffer section for
> performance reasons.
>
> v2: Rebased
> v3: Rebased on top of the WA refactoring
> v3: Added References (Mika)
>
> References: HSDES#1604325460
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>

Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 1 +
>  drivers/gpu/drm/i915/intel_workarounds.c | 4 ++++
>  2 files changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 4eb159f..924b9a6 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -7227,6 +7227,7 @@ enum {
>  #define  DISABLE_PIXEL_MASK_CAMMING		(1<<14)
>  
>  #define GEN9_SLICE_COMMON_ECO_CHICKEN1		_MMIO(0x731c)
> +#define   GEN11_STATE_CACHE_REDIRECT_TO_CS	(1 << 11)
>  
>  #define GEN7_L3SQCREG1				_MMIO(0xB010)
>  #define  VLV_B0_WA_L3SQCREG1_VALUE		0x00D30000
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 04aa885..1d29803 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -470,6 +470,10 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>  		WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
>  				  GEN11_TDL_CLOCK_GATING_FIX_DISABLE);
>  
> +	/* WaEnableStateCacheRedirectToCS:icl */
> +	WA_SET_BIT_MASKED(GEN9_SLICE_COMMON_ECO_CHICKEN1,
> +			  GEN11_STATE_CACHE_REDIRECT_TO_CS);
> +
>  	return 0;
>  }
>  
> -- 
> 1.9.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 03/11] drm/i915/icl: Wa_2006665173
  2018-05-25 22:05 ` [PATCH 03/11] drm/i915/icl: Wa_2006665173 Oscar Mateo
@ 2018-05-29 10:37   ` Mika Kuoppala
  0 siblings, 0 replies; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29 10:37 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> Disable blend embellishment in RCC.
>
> Also, some other registers style fixed in passing.
>
> v2: Rebased on top of the WA refactoring
> v3: Added References (Mika)
> v4:
>   - Fixed in B0
>   - Mentioned style fixes in commit message
>
> References: HSDES#2006665173
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>

Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 18 +++++++++++-------
>  drivers/gpu/drm/i915/intel_workarounds.c |  5 +++++
>  2 files changed, 16 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 924b9a6..6e88c6b 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -7211,13 +7211,17 @@ enum {
>  
>  /* GEN7 chicken */
>  #define GEN7_COMMON_SLICE_CHICKEN1		_MMIO(0x7010)
> -# define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC	((1<<10) | (1<<26))
> -# define GEN9_RHWO_OPTIMIZATION_DISABLE		(1<<14)
> -#define COMMON_SLICE_CHICKEN2			_MMIO(0x7014)
> -# define GEN9_PBE_COMPRESSED_HASH_SELECTION	(1<<13)
> -# define GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE (1<<12)
> -# define GEN8_SBE_DISABLE_REPLAY_BUF_OPTIMIZATION (1<<8)
> -# define GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE	(1<<0)
> +  #define GEN7_CSC1_RHWO_OPT_DISABLE_IN_RCC	((1 << 10) | (1 << 26))
> +  #define GEN9_RHWO_OPTIMIZATION_DISABLE	(1 << 14)
> +
> +#define COMMON_SLICE_CHICKEN2					_MMIO(0x7014)
> +  #define GEN9_PBE_COMPRESSED_HASH_SELECTION			(1 << 13)
> +  #define GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE	(1 << 12)
> +  #define GEN8_SBE_DISABLE_REPLAY_BUF_OPTIMIZATION		(1 << 8)
> +  #define GEN8_CSC2_SBE_VUE_CACHE_CONSERVATIVE			(1 << 0)
> +
> +#define GEN11_COMMON_SLICE_CHICKEN3		_MMIO(0x7304)
> +  #define GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC	(1 << 11)
>  
>  #define HIZ_CHICKEN					_MMIO(0x7018)
>  # define CHV_HZ_8X8_MODE_IN_1X				(1<<15)
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 1d29803..33a1a0c 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -474,6 +474,11 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>  	WA_SET_BIT_MASKED(GEN9_SLICE_COMMON_ECO_CHICKEN1,
>  			  GEN11_STATE_CACHE_REDIRECT_TO_CS);
>  
> +	/* Wa_2006665173:icl (pre-prod) */
> +	if (IS_ICL_REVID(dev_priv, ICL_REVID_A0, ICL_REVID_A0))
> +		WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
> +				  GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
> +
>  	return 0;
>  }
>  
> -- 
> 1.9.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization
  2018-05-25 22:05 ` [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization Oscar Mateo
@ 2018-05-29 12:07   ` Mika Kuoppala
  2018-05-29 12:47     ` Lionel Landwerlin
  2018-07-23 12:03   ` Chris Wilson
  1 sibling, 1 reply; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29 12:07 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> Enables blend optimization for floating point RTs
>
> v2: Rebased on top of the WA refactoring
> v3: Added References (Mika)
>
> References: HSDES#1406393558
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>

Let's see if we can get away without whitelisting this,
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 3 +++
>  drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
>  2 files changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 6e88c6b..f123c3e 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -2663,6 +2663,9 @@ enum i915_power_well_id {
>  #define   GEN8_4x4_STC_OPTIMIZATION_DISABLE	(1<<6)
>  #define   GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE	(1<<1)
>  
> +#define GEN10_CACHE_MODE_SS			_MMIO(0xe420)
> +#define   FLOAT_BLEND_OPTIMIZATION_ENABLE	(1 << 4)
> +
>  #define GEN6_BLITTER_ECOSKPD	_MMIO(0x221d0)
>  #define   GEN6_BLITTER_LOCK_SHIFT			16
>  #define   GEN6_BLITTER_FBC_NOTIFY			(1<<3)
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 33a1a0c..e9c00b0 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -479,6 +479,9 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>  		WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
>  				  GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
>  
> +	/* WaEnableFloatBlendOptimization:icl */
> +	WA_SET_BIT_MASKED(GEN10_CACHE_MODE_SS, FLOAT_BLEND_OPTIMIZATION_ENABLE);
> +
>  	return 0;
>  }
>  
> -- 
> 1.9.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 11/11] drm/i915/icl: Wa_1406463099
  2018-05-25 22:05 ` [PATCH 11/11] drm/i915/icl: Wa_1406463099 Oscar Mateo
@ 2018-05-29 12:40   ` Mika Kuoppala
  0 siblings, 0 replies; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29 12:40 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> Prevents an error in the GAM unit. Also known as WaGamTlbPendError
>
> References: HSDES#1406463099
> References: HSDES#1406465643
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>

Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 5 +++--
>  drivers/gpu/drm/i915/intel_workarounds.c | 7 +++++++
>  2 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 42835d79..8a18447 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -2306,8 +2306,9 @@ enum i915_power_well_id {
>  #define   GAMW_ECO_ENABLE_64K_IPS_FIELD 0xF
>  
>  #define GAMT_CHKN_BIT_REG	_MMIO(0x4ab8)
> -#define   GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING	(1<<28)
> -#define   GAMT_CHKN_DISABLE_I2M_CYCLE_ON_WR_PORT	(1<<24)
> +#define   GAMT_CHKN_DISABLE_L3_COH_PIPE			(1 << 31)
> +#define   GAMT_CHKN_DISABLE_DYNAMIC_CREDIT_SHARING	(1 << 28)
> +#define   GAMT_CHKN_DISABLE_I2M_CYCLE_ON_WR_PORT	(1 << 24)
>  
>  #if 0
>  #define PRB0_TAIL	_MMIO(0x2030)
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 474e498..77929df 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -859,6 +859,13 @@ static void icl_gt_workarounds_apply(struct drm_i915_private *dev_priv)
>  		   PMFLUSHDONE_LNICRSDROP |
>  		   PMFLUSH_GAPL3UNBLOCK |
>  		   PMFLUSHDONE_LNEBLK);
> +
> +	/* Wa_1406463099:icl
> +	 * Formerly known as WaGamTlbPendError
> +	 */
> +	I915_WRITE(GAMT_CHKN_BIT_REG,
> +		   I915_READ(GAMT_CHKN_BIT_REG) |
> +		   GAMT_CHKN_DISABLE_L3_COH_PIPE);
>  }
>  
>  void intel_gt_workarounds_apply(struct drm_i915_private *dev_priv)
> -- 
> 1.9.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization
  2018-05-29 12:07   ` Mika Kuoppala
@ 2018-05-29 12:47     ` Lionel Landwerlin
  2018-05-29 19:13       ` Anuj Phogat
  0 siblings, 1 reply; 23+ messages in thread
From: Lionel Landwerlin @ 2018-05-29 12:47 UTC (permalink / raw)
  To: Mika Kuoppala, Oscar Mateo, intel-gfx; +Cc: Chery, Nanley G

FYI, we're setting this in Mesa :
https://cgit.freedesktop.org/mesa/mesa/tree/src/intel/vulkan/genX_state.c#n130
https://cgit.freedesktop.org/mesa/mesa/tree/src/mesa/drivers/dri/i965/brw_state_upload.c#n67
I don't think we realized this was a privileged register.

Anuj: Maybe we can drop it?

-
Lionel

On 29/05/18 13:07, Mika Kuoppala wrote:
> Oscar Mateo <oscar.mateo@intel.com> writes:
>
>> Enables blend optimization for floating point RTs
>>
>> v2: Rebased on top of the WA refactoring
>> v3: Added References (Mika)
>>
>> References: HSDES#1406393558
>> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
> Let's see if we can get away without whitelisting this,
> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>
>> ---
>>   drivers/gpu/drm/i915/i915_reg.h          | 3 +++
>>   drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
>>   2 files changed, 6 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
>> index 6e88c6b..f123c3e 100644
>> --- a/drivers/gpu/drm/i915/i915_reg.h
>> +++ b/drivers/gpu/drm/i915/i915_reg.h
>> @@ -2663,6 +2663,9 @@ enum i915_power_well_id {
>>   #define   GEN8_4x4_STC_OPTIMIZATION_DISABLE	(1<<6)
>>   #define   GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE	(1<<1)
>>   
>> +#define GEN10_CACHE_MODE_SS			_MMIO(0xe420)
>> +#define   FLOAT_BLEND_OPTIMIZATION_ENABLE	(1 << 4)
>> +
>>   #define GEN6_BLITTER_ECOSKPD	_MMIO(0x221d0)
>>   #define   GEN6_BLITTER_LOCK_SHIFT			16
>>   #define   GEN6_BLITTER_FBC_NOTIFY			(1<<3)
>> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
>> index 33a1a0c..e9c00b0 100644
>> --- a/drivers/gpu/drm/i915/intel_workarounds.c
>> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
>> @@ -479,6 +479,9 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>>   		WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
>>   				  GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
>>   
>> +	/* WaEnableFloatBlendOptimization:icl */
>> +	WA_SET_BIT_MASKED(GEN10_CACHE_MODE_SS, FLOAT_BLEND_OPTIMIZATION_ENABLE);
>> +
>>   	return 0;
>>   }
>>   
>> -- 
>> 1.9.1
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx


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

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

* Re: [PATCH v4 00/11] Workarounds for Icelake
  2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
                   ` (12 preceding siblings ...)
  2018-05-26  9:37 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-05-29 13:03 ` Mika Kuoppala
  13 siblings, 0 replies; 23+ messages in thread
From: Mika Kuoppala @ 2018-05-29 13:03 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Oscar Mateo <oscar.mateo@intel.com> writes:

> The remaining WA patches that haven't been merged to date, plus
> two new ones (WaEnablePreemptionGranularityControlByUMD &
> Wa_1406463099).
>
> Oscar Mateo (11):
>   drm/i915/icl: WaDisableImprovedTdlClkGating
>   drm/i915/icl: WaEnableStateCacheRedirectToCS
>   drm/i915/icl: Wa_2006665173
>   drm/i915/icl: WaEnableFloatBlendOptimization

Reviewed and pushed all the above and the
last one in this series. Thanks for patches!

For the whitelisting stuff, I think we need
to involve mesa/virtualization folks to see
if there is really a need.

-Mika

>   drm/i915/icl: WaSendPushConstantsFromMMIO
>   drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2
>   drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7
>   drm/i915/icl: WaAllowUmdWriteTRTTRootTable
>   drm/i915/icl: WaAllowUMDToModifySamplerMode
>   drm/i915/icl: WaEnablePreemptionGranularityControlByUMD
>   drm/i915/icl: Wa_1406463099
>
>  drivers/gpu/drm/i915/i915_reg.h          | 37 +++++++++++++++++++--------
>  drivers/gpu/drm/i915/intel_workarounds.c | 44 ++++++++++++++++++++++++++++++++
>  2 files changed, 70 insertions(+), 11 deletions(-)
>
> -- 
> 1.9.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization
  2018-05-29 12:47     ` Lionel Landwerlin
@ 2018-05-29 19:13       ` Anuj Phogat
  0 siblings, 0 replies; 23+ messages in thread
From: Anuj Phogat @ 2018-05-29 19:13 UTC (permalink / raw)
  To: Lionel Landwerlin; +Cc: Intel GFX, Chery, Nanley G

On Tue, May 29, 2018 at 5:47 AM, Lionel Landwerlin
<lionel.g.landwerlin@intel.com> wrote:
> FYI, we're setting this in Mesa :
> https://cgit.freedesktop.org/mesa/mesa/tree/src/intel/vulkan/genX_state.c#n130
> https://cgit.freedesktop.org/mesa/mesa/tree/src/mesa/drivers/dri/i965/brw_state_upload.c#n67
> I don't think we realized this was a privileged register.
>
No, I didn't.
> Anuj: Maybe we can drop it?
>
Yes, I'll send out patches to remove it from Mesa.
> -
> Lionel
>
>
> On 29/05/18 13:07, Mika Kuoppala wrote:
>>
>> Oscar Mateo <oscar.mateo@intel.com> writes:
>>
>>> Enables blend optimization for floating point RTs
>>>
>>> v2: Rebased on top of the WA refactoring
>>> v3: Added References (Mika)
>>>
>>> References: HSDES#1406393558
>>> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>>> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
>>
>> Let's see if we can get away without whitelisting this,
>> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>>
>>> ---
>>>   drivers/gpu/drm/i915/i915_reg.h          | 3 +++
>>>   drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
>>>   2 files changed, 6 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/i915/i915_reg.h
>>> b/drivers/gpu/drm/i915/i915_reg.h
>>> index 6e88c6b..f123c3e 100644
>>> --- a/drivers/gpu/drm/i915/i915_reg.h
>>> +++ b/drivers/gpu/drm/i915/i915_reg.h
>>> @@ -2663,6 +2663,9 @@ enum i915_power_well_id {
>>>   #define   GEN8_4x4_STC_OPTIMIZATION_DISABLE   (1<<6)
>>>   #define   GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE  (1<<1)
>>>   +#define GEN10_CACHE_MODE_SS                  _MMIO(0xe420)
>>> +#define   FLOAT_BLEND_OPTIMIZATION_ENABLE      (1 << 4)
>>> +
>>>   #define GEN6_BLITTER_ECOSKPD  _MMIO(0x221d0)
>>>   #define   GEN6_BLITTER_LOCK_SHIFT                     16
>>>   #define   GEN6_BLITTER_FBC_NOTIFY                     (1<<3)
>>> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c
>>> b/drivers/gpu/drm/i915/intel_workarounds.c
>>> index 33a1a0c..e9c00b0 100644
>>> --- a/drivers/gpu/drm/i915/intel_workarounds.c
>>> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
>>> @@ -479,6 +479,9 @@ static int icl_ctx_workarounds_init(struct
>>> drm_i915_private *dev_priv)
>>>                 WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
>>>                                   GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
>>>   +     /* WaEnableFloatBlendOptimization:icl */
>>> +       WA_SET_BIT_MASKED(GEN10_CACHE_MODE_SS,
>>> FLOAT_BLEND_OPTIMIZATION_ENABLE);
>>> +
>>>         return 0;
>>>   }
>>>
>>> --
>>> 1.9.1
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
>
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization
  2018-05-25 22:05 ` [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization Oscar Mateo
  2018-05-29 12:07   ` Mika Kuoppala
@ 2018-07-23 12:03   ` Chris Wilson
  1 sibling, 0 replies; 23+ messages in thread
From: Chris Wilson @ 2018-07-23 12:03 UTC (permalink / raw)
  To: Oscar Mateo, intel-gfx

Quoting Oscar Mateo (2018-05-25 23:05:32)
> Enables blend optimization for floating point RTs
> 
> v2: Rebased on top of the WA refactoring
> v3: Added References (Mika)
> 
> References: HSDES#1406393558
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_reg.h          | 3 +++
>  drivers/gpu/drm/i915/intel_workarounds.c | 3 +++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 6e88c6b..f123c3e 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -2663,6 +2663,9 @@ enum i915_power_well_id {
>  #define   GEN8_4x4_STC_OPTIMIZATION_DISABLE    (1<<6)
>  #define   GEN9_PARTIAL_RESOLVE_IN_VC_DISABLE   (1<<1)
>  
> +#define GEN10_CACHE_MODE_SS                    _MMIO(0xe420)
> +#define   FLOAT_BLEND_OPTIMIZATION_ENABLE      (1 << 4)
> +
>  #define GEN6_BLITTER_ECOSKPD   _MMIO(0x221d0)
>  #define   GEN6_BLITTER_LOCK_SHIFT                      16
>  #define   GEN6_BLITTER_FBC_NOTIFY                      (1<<3)
> diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
> index 33a1a0c..e9c00b0 100644
> --- a/drivers/gpu/drm/i915/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/intel_workarounds.c
> @@ -479,6 +479,9 @@ static int icl_ctx_workarounds_init(struct drm_i915_private *dev_priv)
>                 WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
>                                   GEN11_BLEND_EMB_FIX_DISABLE_IN_RCC);
>  
> +       /* WaEnableFloatBlendOptimization:icl */
> +       WA_SET_BIT_MASKED(GEN10_CACHE_MODE_SS, FLOAT_BLEND_OPTIMIZATION_ENABLE);

This is not sticking according to 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_4527/fi-icl-u/igt@gem_workarounds@basic-read.html

(gem_workarounds:3598) DEBUG:   Address	val		mask		read		result
(gem_workarounds:3598) WARNING: 0x0E420	0x00100010	0x00000010	0x00000000	FAIL
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-07-23 12:03 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-25 22:05 [PATCH v4 00/11] Workarounds for Icelake Oscar Mateo
2018-05-25 22:05 ` [PATCH 01/11] drm/i915/icl: WaDisableImprovedTdlClkGating Oscar Mateo
2018-05-29  8:51   ` Mika Kuoppala
2018-05-25 22:05 ` [PATCH 02/11] drm/i915/icl: WaEnableStateCacheRedirectToCS Oscar Mateo
2018-05-29  9:15   ` Mika Kuoppala
2018-05-25 22:05 ` [PATCH 03/11] drm/i915/icl: Wa_2006665173 Oscar Mateo
2018-05-29 10:37   ` Mika Kuoppala
2018-05-25 22:05 ` [PATCH 04/11] drm/i915/icl: WaEnableFloatBlendOptimization Oscar Mateo
2018-05-29 12:07   ` Mika Kuoppala
2018-05-29 12:47     ` Lionel Landwerlin
2018-05-29 19:13       ` Anuj Phogat
2018-07-23 12:03   ` Chris Wilson
2018-05-25 22:05 ` [PATCH 05/11] drm/i915/icl: WaSendPushConstantsFromMMIO Oscar Mateo
2018-05-25 22:05 ` [PATCH 06/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken2 Oscar Mateo
2018-05-25 22:05 ` [PATCH 07/11] drm/i915/icl: WaAllowUMDToModifyHalfSliceChicken7 Oscar Mateo
2018-05-25 22:05 ` [PATCH 08/11] drm/i915/icl: WaAllowUmdWriteTRTTRootTable Oscar Mateo
2018-05-25 22:05 ` [PATCH 09/11] drm/i915/icl: WaAllowUMDToModifySamplerMode Oscar Mateo
2018-05-25 22:05 ` [PATCH 10/11] drm/i915/icl: WaEnablePreemptionGranularityControlByUMD Oscar Mateo
2018-05-25 22:05 ` [PATCH 11/11] drm/i915/icl: Wa_1406463099 Oscar Mateo
2018-05-29 12:40   ` Mika Kuoppala
2018-05-25 22:57 ` ✓ Fi.CI.BAT: success for Workarounds for Icelake (rev4) Patchwork
2018-05-26  9:37 ` ✓ Fi.CI.IGT: " Patchwork
2018-05-29 13:03 ` [PATCH v4 00/11] Workarounds for Icelake Mika Kuoppala

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.