diff mbox series

drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL

Message ID 20200512180050.6785-1-swathi.dhanavanthri@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL | expand

Commit Message

Dhanavanthri, Swathi May 12, 2020, 6 p.m. UTC
This w/a is fixed in B0 stepping and needs to be restricted for
A0 stepping only.
Bspec: 33451

Signed-off-by: Swathi Dhanavanthri <swathi.dhanavanthri@intel.com>
---
 drivers/gpu/drm/i915/gt/intel_workarounds.c | 11 +++++++----
 drivers/gpu/drm/i915/i915_drv.h             |  5 +++++
 2 files changed, 12 insertions(+), 4 deletions(-)

Comments

Souza, Jose May 12, 2020, 8:55 p.m. UTC | #1
On Tue, 2020-05-12 at 11:00 -0700, Swathi Dhanavanthri wrote:
> This w/a is fixed in B0 stepping and needs to be restricted for
> A0 stepping only.
> Bspec: 33451
> 

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>

> Signed-off-by: Swathi Dhanavanthri <swathi.dhanavanthri@intel.com>
> ---
>  drivers/gpu/drm/i915/gt/intel_workarounds.c | 11 +++++++----
>  drivers/gpu/drm/i915/i915_drv.h             |  5 +++++
>  2 files changed, 12 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c
> index aa90e6b7a118..90a2b9e399b0 100644
> --- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
> @@ -917,10 +917,13 @@ icl_gt_workarounds_init(struct drm_i915_private *i915, struct i915_wa_list *wal)
>  		    GAMT_CHKN_BIT_REG,
>  		    GAMT_CHKN_DISABLE_L3_COH_PIPE);
>  
> -	/* Wa_1607087056:icl */
> -	wa_write_or(wal,
> -		    SLICE_UNIT_LEVEL_CLKGATE,
> -		    L3_CLKGATE_DIS | L3_CR2X_CLKGATE_DIS);
> +	/* Wa_1607087056:icl,ehl,jsl */
> +	if (IS_ICELAKE(i915) ||
> +	    IS_EHL_REVID(i915, EHL_REVID_A0, EHL_REVID_A0)) {
> +		wa_write_or(wal,
> +			    SLICE_UNIT_LEVEL_CLKGATE,
> +			    L3_CLKGATE_DIS | L3_CR2X_CLKGATE_DIS);
> +	}
>  }
>  
>  static void
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 8656f1e0d97f..98dc8cdf2c38 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -1517,6 +1517,11 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915,
>  #define IS_ICL_REVID(p, since, until) \
>  	(IS_ICELAKE(p) && IS_REVID(p, since, until))
>  
> +#define EHL_REVID_A0            0x0
> +
> +#define IS_EHL_REVID(p, since, until) \
> +	(IS_ELKHARTLAKE(p) && IS_REVID(p, since, until))
> +
>  #define TGL_REVID_A0		0x0
>  #define TGL_REVID_B0		0x1
>  #define TGL_REVID_C0		0x2
Souza, Jose May 12, 2020, 9:07 p.m. UTC | #2
On Tue, 2020-05-12 at 20:54 +0000, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL
> URL   : https://patchwork.freedesktop.org/series/77199/
> State : success
> 
> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_8470_full -> Patchwork_17636_full
> ====================================================
> 
> Summary
> -------
> 
>   **SUCCESS**
> 
>   No regressions found.

Pushed to dinq, thanks for the patch.

> 
>   
> 
> Possible new issues
> -------------------
> 
>   Here are the unknown changes that may have been introduced in Patchwork_17636_full:
> 
> ### IGT changes ###
> 
> #### Suppressed ####
> 
>   The following results come from untrusted machines, tests, or statuses.
>   They do not affect the overall result.
> 
>   * {igt@kms_flip@flip-vs-suspend-interruptible@c-edp1}:
>     - shard-iclb:         [PASS][1] -> [INCOMPLETE][2]
>    [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-iclb3/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html
>    [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-iclb3/igt@kms_flip@flip-vs-suspend-interruptible@c-edp1.html
> 
>   
> Known issues
> ------------
> 
>   Here are the changes found in Patchwork_17636_full that come from known issues:
> 
> ### IGT changes ###
> 
> #### Issues hit ####
> 
>   * igt@gem_eio@in-flight-suspend:
>     - shard-kbl:          [PASS][3] -> [DMESG-WARN][4] ([i915#180])
>    [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-kbl6/igt@gem_eio@in-flight-suspend.html
>    [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-kbl6/igt@gem_eio@in-flight-suspend.html
> 
>   * igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
>     - shard-hsw:          [PASS][5] -> [SKIP][6] ([fdo#109271])
>    [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-hsw8/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html
>    [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-hsw7/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html
> 
>   * igt@kms_cursor_legacy@pipe-d-torture-bo:
>     - shard-tglb:         [PASS][7] -> [DMESG-WARN][8] ([i915#128])
>    [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-tglb7/igt@kms_cursor_legacy@pipe-d-torture-bo.html
>    [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-tglb1/igt@kms_cursor_legacy@pipe-d-torture-bo.html
> 
>   * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt:
>     - shard-tglb:         [PASS][9] -> [SKIP][10] ([i915#668]) +1 similar issue
>    [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt.html
>    [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-tglb6/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt.html
> 
>   * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
>     - shard-skl:          [PASS][11] -> [FAIL][12] ([fdo#108145] / [i915#265]) +1 similar issue
>    [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
>    [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
> 
>   * igt@kms_psr2_su@frontbuffer:
>     - shard-iclb:         [PASS][13] -> [SKIP][14] ([fdo#109642] / [fdo#111068])
>    [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
>    [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-iclb7/igt@kms_psr2_su@frontbuffer.html
> 
>   * igt@kms_psr@psr2_cursor_render:
>     - shard-iclb:         [PASS][15] -> [SKIP][16] ([fdo#109441])
>    [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
>    [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-iclb7/igt@kms_psr@psr2_cursor_render.html
> 
>   
> #### Possible fixes ####
> 
>   * igt@gen9_exec_parse@allowed-all:
>     - shard-apl:          [DMESG-WARN][17] ([i915#1436] / [i915#716]) -> [PASS][18]
>    [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-apl3/igt@gen9_exec_parse@allowed-all.html
>    [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-apl2/igt@gen9_exec_parse@allowed-all.html
> 
>   * igt@i915_selftest@live@gt_pm:
>     - shard-apl:          [INCOMPLETE][19] ([i915#1812]) -> [PASS][20]
>    [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-apl2/igt@i915_selftest@live@gt_pm.html
>    [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-apl1/igt@i915_selftest@live@gt_pm.html
> 
>   * igt@kms_cursor_legacy@pipe-c-torture-bo:
>     - shard-hsw:          [DMESG-WARN][21] ([i915#128]) -> [PASS][22]
>    [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-hsw6/igt@kms_cursor_legacy@pipe-c-torture-bo.html
>    [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-hsw1/igt@kms_cursor_legacy@pipe-c-torture-bo.html
> 
>   * {igt@kms_flip@flip-vs-suspend-interruptible@c-dp1}:
>     - shard-apl:          [DMESG-WARN][23] ([i915#180]) -> [PASS][24] +6 similar issues
>    [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
>    [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-apl3/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
> 
>   * {igt@kms_flip@flip-vs-suspend@c-dp1}:
>     - shard-kbl:          [DMESG-WARN][25] ([i915#180]) -> [PASS][26] +2 similar issues
>    [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-kbl7/igt@kms_flip@flip-vs-suspend@c-dp1.html
>    [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-kbl7/igt@kms_flip@flip-vs-suspend@c-dp1.html
> 
>   * {igt@kms_flip@plain-flip-ts-check@a-hdmi-a1}:
>     - shard-glk:          [FAIL][27] ([i915#34]) -> [PASS][28]
>    [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-glk8/igt@kms_flip@plain-flip-ts-check@a-hdmi-a1.html
>    [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-glk7/igt@kms_flip@plain-flip-ts-check@a-hdmi-a1.html
> 
>   * igt@kms_hdr@bpc-switch-suspend:
>     - shard-skl:          [FAIL][29] ([i915#1188]) -> [PASS][30]
>    [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-skl9/igt@kms_hdr@bpc-switch-suspend.html
>    [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-skl5/igt@kms_hdr@bpc-switch-suspend.html
> 
>   * igt@kms_psr@psr2_suspend:
>     - shard-iclb:         [SKIP][31] ([fdo#109441]) -> [PASS][32] +2 similar issues
>    [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-iclb3/igt@kms_psr@psr2_suspend.html
>    [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-iclb2/igt@kms_psr@psr2_suspend.html
> 
>   * {igt@perf@blocking-parameterized}:
>     - shard-hsw:          [FAIL][33] ([i915#1542]) -> [PASS][34]
>    [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-hsw8/igt@perf@blocking-parameterized.html
>    [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-hsw7/igt@perf@blocking-parameterized.html
> 
>   
> #### Warnings ####
> 
>   * igt@kms_content_protection@atomic:
>     - shard-apl:          [TIMEOUT][35] ([i915#1319]) -> [FAIL][36] ([fdo#110321] / [fdo#110336])
>    [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-apl1/igt@kms_content_protection@atomic.html
>    [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-apl1/igt@kms_content_protection@atomic.html
> 
>   * igt@kms_content_protection@srm:
>     - shard-apl:          [TIMEOUT][37] ([i915#1319]) -> [FAIL][38] ([fdo#110321])
>    [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8470/shard-apl3/igt@kms_content_protection@srm.html
>    [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/shard-apl7/igt@kms_content_protection@srm.html
> 
>   
>   {name}: This element is suppressed. This means it is ignored when computing
>           the status of the difference (SUCCESS, WARNING, or FAILURE).
> 
>   [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
>   [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
>   [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
>   [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
>   [fdo#110321]: https://bugs.freedesktop.org/show_bug.cgi?id=110321
>   [fdo#110336]: https://bugs.freedesktop.org/show_bug.cgi?id=110336
>   [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
>   [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
>   [i915#128]: https://gitlab.freedesktop.org/drm/intel/issues/128
>   [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
>   [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
>   [i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542
>   [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
>   [i915#1812]: https://gitlab.freedesktop.org/drm/intel/issues/1812
>   [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
>   [i915#34]: https://gitlab.freedesktop.org/drm/intel/issues/34
>   [i915#668]: https://gitlab.freedesktop.org/drm/intel/issues/668
>   [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
>   [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
> 
> 
> Participating hosts (11 -> 11)
> ------------------------------
> 
>   No changes in participating hosts
> 
> 
> Build changes
> -------------
> 
>   * CI: CI-20190529 -> None
>   * Linux: CI_DRM_8470 -> Patchwork_17636
> 
>   CI-20190529: 20190529
>   CI_DRM_8470: d2c5ae86eac811c49f2fe22c4fa02b6e6d31cd67 @ git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_5651: e54e2642f1967ca3c488db32264607df670d1dfb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_17636: d26f548aa0bd59e4dc4853eb2345620768d7fd9a @ git://anongit.freedesktop.org/gfx-ci/linux
>   piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17636/index.html
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c
index aa90e6b7a118..90a2b9e399b0 100644
--- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
@@ -917,10 +917,13 @@  icl_gt_workarounds_init(struct drm_i915_private *i915, struct i915_wa_list *wal)
 		    GAMT_CHKN_BIT_REG,
 		    GAMT_CHKN_DISABLE_L3_COH_PIPE);
 
-	/* Wa_1607087056:icl */
-	wa_write_or(wal,
-		    SLICE_UNIT_LEVEL_CLKGATE,
-		    L3_CLKGATE_DIS | L3_CR2X_CLKGATE_DIS);
+	/* Wa_1607087056:icl,ehl,jsl */
+	if (IS_ICELAKE(i915) ||
+	    IS_EHL_REVID(i915, EHL_REVID_A0, EHL_REVID_A0)) {
+		wa_write_or(wal,
+			    SLICE_UNIT_LEVEL_CLKGATE,
+			    L3_CLKGATE_DIS | L3_CR2X_CLKGATE_DIS);
+	}
 }
 
 static void
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 8656f1e0d97f..98dc8cdf2c38 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1517,6 +1517,11 @@  IS_SUBPLATFORM(const struct drm_i915_private *i915,
 #define IS_ICL_REVID(p, since, until) \
 	(IS_ICELAKE(p) && IS_REVID(p, since, until))
 
+#define EHL_REVID_A0            0x0
+
+#define IS_EHL_REVID(p, since, until) \
+	(IS_ELKHARTLAKE(p) && IS_REVID(p, since, until))
+
 #define TGL_REVID_A0		0x0
 #define TGL_REVID_B0		0x1
 #define TGL_REVID_C0		0x2