Message ID | 20200501213701.371443-1-matthew.d.roper@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/icp: Add Wa_14010685332 | expand |
Reviewed by: Bob.J.Paauwe@intel.com -- Bob Paauwe Bob.J.Paauwe@intel.com IOTG / Platform Software Engineering Intel Corp. Folsom, CA (916) 356-6193 (530) 409-0831 (cell) > -----Original Message----- > From: Roper, Matthew D <matthew.d.roper@intel.com> > Sent: Friday, May 01, 2020 2:37 PM > To: intel-gfx@lists.freedesktop.org > Cc: Roper, Matthew D <matthew.d.roper@intel.com>; Paauwe, Bob J > <bob.j.paauwe@intel.com> > Subject: [PATCH] drm/i915/icp: Add Wa_14010685332 > > We need to toggle a SDE chicken bit on and then off as the final > step when disabling interrupts in preparation for runtime suspend. > > Bspec: 33450 > Bspec: 8402 > Cc: Bob Paauwe <bob.j.paauwe@intel.com> > Signed-off-by: Matt Roper <matthew.d.roper@intel.com> > --- > drivers/gpu/drm/i915/i915_irq.c | 8 ++++++++ > drivers/gpu/drm/i915/i915_reg.h | 1 + > 2 files changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_irq.c > b/drivers/gpu/drm/i915/i915_irq.c > index bd722d0650c8..f8202a32c112 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -2870,6 +2870,14 @@ static void gen11_display_irq_reset(struct > drm_i915_private *dev_priv) > > if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP) > GEN3_IRQ_RESET(uncore, SDE); > + > + /* Wa_14010685332:icl */ > + if (INTEL_PCH_TYPE(dev_priv) == PCH_ICP) { > + intel_uncore_rmw(uncore, SOUTH_CHICKEN1, > + SBCLK_RUN_REFCLK_DIS, > SBCLK_RUN_REFCLK_DIS); > + intel_uncore_rmw(uncore, SOUTH_CHICKEN1, > + SBCLK_RUN_REFCLK_DIS, 0); > + } > } > > static void gen11_irq_reset(struct drm_i915_private *dev_priv) > diff --git a/drivers/gpu/drm/i915/i915_reg.h > b/drivers/gpu/drm/i915/i915_reg.h > index fd9f2904d93c..34af899751e2 100644 > --- a/drivers/gpu/drm/i915/i915_reg.h > +++ b/drivers/gpu/drm/i915/i915_reg.h > @@ -8573,6 +8573,7 @@ enum { > #define FDI_BC_BIFURCATION_SELECT (1 << 12) > #define CHASSIS_CLK_REQ_DURATION_MASK (0xf << 8) > #define CHASSIS_CLK_REQ_DURATION(x) ((x) << 8) > +#define SBCLK_RUN_REFCLK_DIS (1 << 7) > #define SPT_PWM_GRANULARITY (1 << 0) > #define SOUTH_CHICKEN2 _MMIO(0xc2004) > #define FDI_MPHY_IOSFSB_RESET_STATUS (1 << 13) > -- > 2.24.1
On Fri, May 01, 2020 at 11:32:17PM +0000, Patchwork wrote: > == Series Details == > > Series: drm/i915/icp: Add Wa_14010685332 > URL : https://patchwork.freedesktop.org/series/76841/ > State : failure > > == Summary == > > CI Bug Log - changes from CI_DRM_8407_full -> Patchwork_17547_full > ==================================================== > > Summary > ------- > > **FAILURE** > > Serious unknown changes coming with Patchwork_17547_full absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in Patchwork_17547_full, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives in CI. > > > > Possible new issues > ------------------- > > Here are the unknown changes that may have been introduced in Patchwork_17547_full: > > ### IGT changes ### > > #### Possible regressions #### > > * igt@gem_eio@unwedge-stress: > - shard-hsw: [PASS][1] -> [FAIL][2] > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-hsw6/igt@gem_eio@unwedge-stress.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-hsw4/igt@gem_eio@unwedge-stress.html Unrelated; this patch adds gen11 IRQ code that only runs when when an ICP PCH is present; it wouldn't have any impact on a Haswell system. Patch applied to dinq. Thanks Bob for the review. Matt > > > Known issues > ------------ > > Here are the changes found in Patchwork_17547_full that come from known issues: > > ### IGT changes ### > > #### Issues hit #### > > * igt@gem_workarounds@suspend-resume-fd: > - shard-skl: [PASS][3] -> [INCOMPLETE][4] ([i915#69]) > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl4/igt@gem_workarounds@suspend-resume-fd.html > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl6/igt@gem_workarounds@suspend-resume-fd.html > > * igt@i915_suspend@forcewake: > - shard-kbl: [PASS][5] -> [DMESG-WARN][6] ([i915#180]) +2 similar issues > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-kbl2/igt@i915_suspend@forcewake.html > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-kbl7/igt@i915_suspend@forcewake.html > > * igt@kms_cursor_crc@pipe-b-cursor-suspend: > - shard-apl: [PASS][7] -> [DMESG-WARN][8] ([i915#180]) +1 similar issue > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl1/igt@kms_cursor_crc@pipe-b-cursor-suspend.html > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl2/igt@kms_cursor_crc@pipe-b-cursor-suspend.html > > * igt@kms_hdr@bpc-switch: > - shard-skl: [PASS][9] -> [FAIL][10] ([i915#1188]) > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl10/igt@kms_hdr@bpc-switch.html > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl8/igt@kms_hdr@bpc-switch.html > > * igt@kms_lease@lease_again: > - shard-snb: [PASS][11] -> [SKIP][12] ([fdo#109271]) +1 similar issue > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-snb1/igt@kms_lease@lease_again.html > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-snb2/igt@kms_lease@lease_again.html > > * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence: > - shard-skl: [PASS][13] -> [FAIL][14] ([i915#53]) > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl7/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence.html > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl2/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence.html > > * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: > - shard-skl: [PASS][15] -> [FAIL][16] ([fdo#108145] / [i915#265]) > [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl2/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > > * igt@kms_psr@psr2_sprite_plane_onoff: > - shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109441]) > [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-iclb2/igt@kms_psr@psr2_sprite_plane_onoff.html > [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-iclb7/igt@kms_psr@psr2_sprite_plane_onoff.html > > > #### Possible fixes #### > > * {igt@gem_exec_reloc@basic-many-active@rcs0}: > - shard-apl: [FAIL][19] ([i915#1815]) -> [PASS][20] > [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl3/igt@gem_exec_reloc@basic-many-active@rcs0.html > [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl4/igt@gem_exec_reloc@basic-many-active@rcs0.html > > * igt@gen9_exec_parse@allowed-all: > - shard-apl: [DMESG-WARN][21] ([i915#716]) -> [PASS][22] > [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl6/igt@gen9_exec_parse@allowed-all.html > [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl7/igt@gen9_exec_parse@allowed-all.html > > * igt@kms_cursor_crc@pipe-b-cursor-suspend: > - shard-skl: [INCOMPLETE][23] ([i915#300]) -> [PASS][24] > [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-suspend.html > [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl3/igt@kms_cursor_crc@pipe-b-cursor-suspend.html > > * igt@kms_cursor_legacy@pipe-b-torture-bo: > - shard-snb: [DMESG-WARN][25] ([i915#128]) -> [PASS][26] > [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-snb6/igt@kms_cursor_legacy@pipe-b-torture-bo.html > [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-snb1/igt@kms_cursor_legacy@pipe-b-torture-bo.html > > * {igt@kms_flip@flip-vs-suspend@a-edp1}: > - shard-skl: [INCOMPLETE][27] ([i915#198]) -> [PASS][28] > [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl9/igt@kms_flip@flip-vs-suspend@a-edp1.html > [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl6/igt@kms_flip@flip-vs-suspend@a-edp1.html > > * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw: > - shard-snb: [SKIP][29] ([fdo#109271]) -> [PASS][30] +1 similar issue > [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-snb2/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html > [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-snb1/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html > > * igt@kms_hdr@bpc-switch-suspend: > - shard-skl: [FAIL][31] ([i915#1188]) -> [PASS][32] > [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-skl4/igt@kms_hdr@bpc-switch-suspend.html > [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-skl4/igt@kms_hdr@bpc-switch-suspend.html > > * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes: > - shard-apl: [DMESG-WARN][33] ([i915#180]) -> [PASS][34] +1 similar issue > [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html > [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html > > * igt@kms_psr@psr2_basic: > - shard-iclb: [SKIP][35] ([fdo#109441]) -> [PASS][36] +2 similar issues > [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-iclb4/igt@kms_psr@psr2_basic.html > [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-iclb2/igt@kms_psr@psr2_basic.html > > * igt@kms_setmode@basic: > - shard-hsw: [FAIL][37] ([i915#31]) -> [PASS][38] > [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-hsw2/igt@kms_setmode@basic.html > [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-hsw7/igt@kms_setmode@basic.html > > * igt@kms_vblank@pipe-a-ts-continuation-suspend: > - shard-kbl: [DMESG-WARN][39] ([i915#180]) -> [PASS][40] +2 similar issues > [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html > [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-kbl3/igt@kms_vblank@pipe-a-ts-continuation-suspend.html > > * {igt@perf@blocking-parameterized}: > - shard-hsw: [FAIL][41] ([i915#1542]) -> [PASS][42] > [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-hsw1/igt@perf@blocking-parameterized.html > [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-hsw4/igt@perf@blocking-parameterized.html > > > #### Warnings #### > > * igt@i915_pm_dc@dc6-dpms: > - shard-tglb: [FAIL][43] ([i915#454]) -> [SKIP][44] ([i915#468]) > [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-tglb1/igt@i915_pm_dc@dc6-dpms.html > [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html > > * igt@kms_plane_alpha_blend@pipe-a-alpha-basic: > - shard-apl: [FAIL][45] ([fdo#108145] / [i915#265] / [i915#95]) -> [FAIL][46] ([fdo#108145] / [i915#265]) > [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl3/igt@kms_plane_alpha_blend@pipe-a-alpha-basic.html > [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl4/igt@kms_plane_alpha_blend@pipe-a-alpha-basic.html > > * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max: > - shard-apl: [FAIL][47] ([fdo#108145] / [i915#265]) -> [FAIL][48] ([fdo#108145] / [i915#265] / [i915#95]) > [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8407/shard-apl1/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max.html > [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_17547/shard-apl2/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max.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 > [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188 > [i915#128]: https://gitlab.freedesktop.org/drm/intel/issues/128 > [i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542 > [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 > [i915#1815]: https://gitlab.freedesktop.org/drm/intel/issues/1815 > [i915#198]: https://gitlab.freedesktop.org/drm/intel/issues/198 > [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 > [i915#300]: https://gitlab.freedesktop.org/drm/intel/issues/300 > [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 > [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 > [i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468 > [i915#53]: https://gitlab.freedesktop.org/drm/intel/issues/53 > [i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69 > [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 > [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 > > > Participating hosts (10 -> 10) > ------------------------------ > > No changes in participating hosts > > > Build changes > ------------- > > * CI: CI-20190529 -> None > * Linux: CI_DRM_8407 -> Patchwork_17547 > > CI-20190529: 20190529 > CI_DRM_8407: ecb91f743598d9d646fa046c7341058e48494e7c @ git://anongit.freedesktop.org/gfx-ci/linux > IGT_5626: f27fdfff026276ac75c69e487c929a843f66f6ca @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools > Patchwork_17547: f7dc0952bb4db19d35fabcf0a20047b1f39891cf @ 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_17547/index.html
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index bd722d0650c8..f8202a32c112 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -2870,6 +2870,14 @@ static void gen11_display_irq_reset(struct drm_i915_private *dev_priv) if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP) GEN3_IRQ_RESET(uncore, SDE); + + /* Wa_14010685332:icl */ + if (INTEL_PCH_TYPE(dev_priv) == PCH_ICP) { + intel_uncore_rmw(uncore, SOUTH_CHICKEN1, + SBCLK_RUN_REFCLK_DIS, SBCLK_RUN_REFCLK_DIS); + intel_uncore_rmw(uncore, SOUTH_CHICKEN1, + SBCLK_RUN_REFCLK_DIS, 0); + } } static void gen11_irq_reset(struct drm_i915_private *dev_priv) diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index fd9f2904d93c..34af899751e2 100644 --- a/drivers/gpu/drm/i915/i915_reg.h +++ b/drivers/gpu/drm/i915/i915_reg.h @@ -8573,6 +8573,7 @@ enum { #define FDI_BC_BIFURCATION_SELECT (1 << 12) #define CHASSIS_CLK_REQ_DURATION_MASK (0xf << 8) #define CHASSIS_CLK_REQ_DURATION(x) ((x) << 8) +#define SBCLK_RUN_REFCLK_DIS (1 << 7) #define SPT_PWM_GRANULARITY (1 << 0) #define SOUTH_CHICKEN2 _MMIO(0xc2004) #define FDI_MPHY_IOSFSB_RESET_STATUS (1 << 13)
We need to toggle a SDE chicken bit on and then off as the final step when disabling interrupts in preparation for runtime suspend. Bspec: 33450 Bspec: 8402 Cc: Bob Paauwe <bob.j.paauwe@intel.com> Signed-off-by: Matt Roper <matthew.d.roper@intel.com> --- drivers/gpu/drm/i915/i915_irq.c | 8 ++++++++ drivers/gpu/drm/i915/i915_reg.h | 1 + 2 files changed, 9 insertions(+)