diff mbox series

[V3] drm/i915/ehl: Implement W/A 22010492432

Message ID 20201104050655.171185-1-tejaskumarx.surendrakumar.upadhyay@intel.com (mailing list archive)
State New, archived
Headers show
Series [V3] drm/i915/ehl: Implement W/A 22010492432 | expand

Commit Message

Tejas Upadhyay Nov. 4, 2020, 5:06 a.m. UTC
As per W/A implemented for TGL to program half of the nominal
DCO divider fraction value which is also applicable on EHL.

Changes since V2:
	- Apply stepping B0 till FOREVER
	- B0 - revid update as per Bspec 29153
Changes since V1:
        - ehl_ used as to keep earliest platform prefix
        - WA required B0 stepping onwards

Cc: Deak Imre <imre.deak@intel.com>
Signed-off-by: Tejas Upadhyay <tejaskumarx.surendrakumar.upadhyay@intel.com>
---
 drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 13 ++++++++-----
 drivers/gpu/drm/i915/i915_drv.h               |  1 +
 2 files changed, 9 insertions(+), 5 deletions(-)

Comments

Imre Deak Nov. 5, 2020, 2:48 p.m. UTC | #1
On Wed, Nov 04, 2020 at 10:36:55AM +0530, Tejas Upadhyay wrote:
> As per W/A implemented for TGL to program half of the nominal
> DCO divider fraction value which is also applicable on EHL.
> 
> Changes since V2:
> 	- Apply stepping B0 till FOREVER
> 	- B0 - revid update as per Bspec 29153
> Changes since V1:
>         - ehl_ used as to keep earliest platform prefix
>         - WA required B0 stepping onwards
> 
> Cc: Deak Imre <imre.deak@intel.com>
> Signed-off-by: Tejas Upadhyay <tejaskumarx.surendrakumar.upadhyay@intel.com>

Reviewed-by: Imre Deak <imre.deak@intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 13 ++++++++-----
>  drivers/gpu/drm/i915/i915_drv.h               |  1 +
>  2 files changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> index eaef7a2d041f..a95e6a2ac698 100644
> --- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> +++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> @@ -2636,13 +2636,16 @@ static bool cnl_ddi_hdmi_pll_dividers(struct intel_crtc_state *crtc_state)
>  }
>  
>  /*
> - * Display WA #22010492432: tgl
> + * Display WA #22010492432: ehl, tgl
>   * Program half of the nominal DCO divider fraction value.
>   */
>  static bool
> -tgl_combo_pll_div_frac_wa_needed(struct drm_i915_private *i915)
> +ehl_combo_pll_div_frac_wa_needed(struct drm_i915_private *i915)
>  {
> -	return IS_TIGERLAKE(i915) && i915->dpll.ref_clks.nssc == 38400;
> +	return ((IS_PLATFORM(i915, INTEL_ELKHARTLAKE) &&
> +		 IS_JSL_EHL_REVID(i915, EHL_REVID_B0, REVID_FOREVER)) ||
> +		 IS_TIGERLAKE(i915)) &&
> +		 i915->dpll.ref_clks.nssc == 38400;
>  }
>  
>  static int __cnl_ddi_wrpll_get_freq(struct drm_i915_private *dev_priv,
> @@ -2696,7 +2699,7 @@ static int __cnl_ddi_wrpll_get_freq(struct drm_i915_private *dev_priv,
>  	dco_fraction = (pll_state->cfgcr0 & DPLL_CFGCR0_DCO_FRACTION_MASK) >>
>  		       DPLL_CFGCR0_DCO_FRACTION_SHIFT;
>  
> -	if (tgl_combo_pll_div_frac_wa_needed(dev_priv))
> +	if (ehl_combo_pll_div_frac_wa_needed(dev_priv))
>  		dco_fraction *= 2;
>  
>  	dco_freq += (dco_fraction * ref_clock) / 0x8000;
> @@ -3086,7 +3089,7 @@ static void icl_calc_dpll_state(struct drm_i915_private *i915,
>  
>  	memset(pll_state, 0, sizeof(*pll_state));
>  
> -	if (tgl_combo_pll_div_frac_wa_needed(i915))
> +	if (ehl_combo_pll_div_frac_wa_needed(i915))
>  		dco_fraction = DIV_ROUND_CLOSEST(dco_fraction, 2);
>  
>  	pll_state->cfgcr0 = DPLL_CFGCR0_DCO_FRACTION(dco_fraction) |
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index d548e10e1600..1a5645498cb7 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -1560,6 +1560,7 @@ extern const struct i915_rev_steppings kbl_revids[];
>  	(IS_ICELAKE(p) && IS_REVID(p, since, until))
>  
>  #define EHL_REVID_A0            0x0
> +#define EHL_REVID_B0            0x1
>  
>  #define IS_JSL_EHL_REVID(p, since, until) \
>  	(IS_JSL_EHL(p) && IS_REVID(p, since, until))
> -- 
> 2.28.0
>
Souza, Jose Nov. 5, 2020, 4:30 p.m. UTC | #2
On Wed, 2020-11-04 at 08:43 +0000, Patchwork wrote:
Patch Details
Series: drm/i915/ehl: Implement W/A 22010492432 (rev3)
URL:    https://patchwork.freedesktop.org/series/83135/
State:  failure
Details:        https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/index.html
CI Bug Log - changes from CI_DRM_9260_full -> Patchwork_18848_full
Summary

FAILURE

Serious unknown changes coming with Patchwork_18848_full absolutely need to be
verified manually.

If you think the reported changes have nothing to do with the changes
introduced in Patchwork_18848_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_18848_full:

IGT changes
Possible regressions

  *   igt@gem_eio@unwedge-stress:
     *   shard-hsw: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-hsw4/igt@gem_eio@unwedge-stress.html> -> TIMEOUT<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-hsw7/igt@gem_eio@unwedge-stress.html>


Regression not related, pushed to dinq.
Thanks for the patch.

New tests

New tests have been introduced between CI_DRM_9260_full and Patchwork_18848_full:

New CI tests (1)

  *   boot:
     *   Statuses : 200 pass(s)
     *   Exec time: [0.0] s

Known issues

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

IGT changes
Issues hit

  *   igt@gem_exec_whisper@basic-fds-all:

     *   shard-snb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb2/igt@gem_exec_whisper@basic-fds-all.html> -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb6/igt@gem_exec_whisper@basic-fds-all.html> (i915#82<https://gitlab.freedesktop.org/drm/intel/issues/82>)
  *   igt@gem_huc_copy@huc-copy:

     *   shard-tglb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-tglb8/igt@gem_huc_copy@huc-copy.html> -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-tglb6/igt@gem_huc_copy@huc-copy.html> (i915#2190<https://gitlab.freedesktop.org/drm/intel/issues/2190>)
  *   igt@gen9_exec_parse@allowed-single:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl4/igt@gen9_exec_parse@allowed-single.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl10/igt@gen9_exec_parse@allowed-single.html> (i915#1436<https://gitlab.freedesktop.org/drm/intel/issues/1436> / i915#716<https://gitlab.freedesktop.org/drm/intel/issues/716>)
  *   igt@i915_selftest@live@blt:

     *   shard-snb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb7/igt@i915_selftest@live@blt.html> -> DMESG-FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb2/igt@i915_selftest@live@blt.html> (i915#1409<https://gitlab.freedesktop.org/drm/intel/issues/1409>)
  *   igt@i915_suspend@forcewake:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl2/igt@i915_suspend@forcewake.html> -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl1/igt@i915_suspend@forcewake.html> (i915#636<https://gitlab.freedesktop.org/drm/intel/issues/636>)
  *   igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>) +4 similar issues
  *   igt@kms_cursor_edge_walk@pipe-b-256x256-right-edge:

     *   shard-hsw: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-hsw6/igt@kms_cursor_edge_walk@pipe-b-256x256-right-edge.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-hsw1/igt@kms_cursor_edge_walk@pipe-b-256x256-right-edge.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +1 similar issue
  *   igt@kms_draw_crc@draw-method-xrgb2101010-blt-untiled:

     *   shard-snb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb6/igt@kms_draw_crc@draw-method-xrgb2101010-blt-untiled.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb4/igt@kms_draw_crc@draw-method-xrgb2101010-blt-untiled.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>)
  *   igt@kms_flip@2x-wf_vblank-ts-check@ab-hdmi-a1-hdmi-a2:

     *   shard-glk: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-glk4/igt@kms_flip@2x-wf_vblank-ts-check@ab-hdmi-a1-hdmi-a2.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-glk7/igt@kms_flip@2x-wf_vblank-ts-check@ab-hdmi-a1-hdmi-a2.html> (i915#118<https://gitlab.freedesktop.org/drm/intel/issues/118> / i915#95<https://gitlab.freedesktop.org/drm/intel/issues/95>)
  *   igt@kms_flip@blocking-wf_vblank@a-edp1:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl7/igt@kms_flip@blocking-wf_vblank@a-edp1.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl1/igt@kms_flip@blocking-wf_vblank@a-edp1.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +7 similar issues
  *   igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1:

     *   shard-tglb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-tglb7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-tglb7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html> (i915#2598<https://gitlab.freedesktop.org/drm/intel/issues/2598>)
  *   igt@kms_hdr@bpc-switch:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl8/igt@kms_hdr@bpc-switch.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl2/igt@kms_hdr@bpc-switch.html> (i915#1188<https://gitlab.freedesktop.org/drm/intel/issues/1188>)
  *   igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl9/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html> -> DMESG-FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html> (fdo#108145<https://bugs.freedesktop.org/show_bug.cgi?id=108145> / i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@kms_psr2_su@frontbuffer:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb2/igt@kms_psr2_su@frontbuffer.html> -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb3/igt@kms_psr2_su@frontbuffer.html> (fdo#109642<https://bugs.freedesktop.org/show_bug.cgi?id=109642> / fdo#111068<https://bugs.freedesktop.org/show_bug.cgi?id=111068>)
  *   igt@kms_psr@psr2_cursor_mmap_cpu:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html> -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb3/igt@kms_psr@psr2_cursor_mmap_cpu.html> (fdo#109441<https://bugs.freedesktop.org/show_bug.cgi?id=109441>) +2 similar issues
  *   igt@kms_setmode@basic:

     *   shard-hsw: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-hsw8/igt@kms_setmode@basic.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-hsw6/igt@kms_setmode@basic.html> (i915#31<https://gitlab.freedesktop.org/drm/intel/issues/31>)
  *   igt@kms_universal_plane@universal-plane-gen9-features-pipe-a:

     *   shard-kbl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-kbl3/igt@kms_universal_plane@universal-plane-gen9-features-pipe-a.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-kbl7/igt@kms_universal_plane@universal-plane-gen9-features-pipe-a.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +5 similar issues
  *   igt@sysfs_timeslice_duration@invalid@rcs0:

     *   shard-glk: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-glk4/igt@sysfs_timeslice_duration@invalid@rcs0.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-glk7/igt@sysfs_timeslice_duration@invalid@rcs0.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +2 similar issues

Possible fixes

  *   igt@device_reset@unbind-reset-rebind:

     *   shard-iclb: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb6/igt@device_reset@unbind-reset-rebind.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb1/igt@device_reset@unbind-reset-rebind.html>
  *   igt@feature_discovery@psr2:

     *   shard-iclb: SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb5/igt@feature_discovery@psr2.html> (i915#658<https://gitlab.freedesktop.org/drm/intel/issues/658>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb2/igt@feature_discovery@psr2.html>
  *   igt@gem_eio@kms:

     *   shard-skl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl9/igt@gem_eio@kms.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl6/igt@gem_eio@kms.html> +4 similar issues
  *   igt@i915_pm_dc@dc6-psr:

     *   shard-iclb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb8/igt@i915_pm_dc@dc6-psr.html> (i915#454<https://gitlab.freedesktop.org/drm/intel/issues/454>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb3/igt@i915_pm_dc@dc6-psr.html>
  *   igt@kms_color@pipe-a-gamma:

     *   shard-tglb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-tglb5/igt@kms_color@pipe-a-gamma.html> (i915#1149<https://gitlab.freedesktop.org/drm/intel/issues/1149>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-tglb7/igt@kms_color@pipe-a-gamma.html>
  *   igt@kms_cursor_crc@pipe-b-cursor-128x42-random:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl6/igt@kms_cursor_crc@pipe-b-cursor-128x42-random.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl9/igt@kms_cursor_crc@pipe-b-cursor-128x42-random.html>
  *   igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:

     *   shard-hsw: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-hsw1/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html> (i915#96<https://gitlab.freedesktop.org/drm/intel/issues/96>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-hsw2/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html>
  *   igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy.html> (i915#2346<https://gitlab.freedesktop.org/drm/intel/issues/2346>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy.html>
  *   igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl2/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html> (i915#79<https://gitlab.freedesktop.org/drm/intel/issues/79>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl6/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html>
  *   igt@kms_flip@flip-vs-expired-vblank@b-dp1:

     *   shard-apl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-apl3/igt@kms_flip@flip-vs-expired-vblank@b-dp1.html> (i915#1635<https://gitlab.freedesktop.org/drm/intel/issues/1635> / i915#79<https://gitlab.freedesktop.org/drm/intel/issues/79>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-apl6/igt@kms_flip@flip-vs-expired-vblank@b-dp1.html>
  *   igt@kms_flip@flip-vs-wf_vblank-interruptible@a-dp1:

     *   shard-apl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-apl6/igt@kms_flip@flip-vs-wf_vblank-interruptible@a-dp1.html> (i915#1635<https://gitlab.freedesktop.org/drm/intel/issues/1635> / i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-apl3/igt@kms_flip@flip-vs-wf_vblank-interruptible@a-dp1.html> +3 similar issues
  *   igt@kms_flip@flip-vs-wf_vblank-interruptible@a-hdmi-a1:

     *   shard-glk: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-glk4/igt@kms_flip@flip-vs-wf_vblank-interruptible@a-hdmi-a1.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-glk7/igt@kms_flip@flip-vs-wf_vblank-interruptible@a-hdmi-a1.html> +2 similar issues
  *   igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt:

     *   shard-snb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt.html> (i915#2546<https://gitlab.freedesktop.org/drm/intel/issues/2546>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-blt.html>
  *   igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt:

     *   shard-tglb: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-tglb3/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-tglb6/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-mmap-gtt.html> +2 similar issues
  *   igt@kms_hdr@bpc-switch-dpms:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl7/igt@kms_hdr@bpc-switch-dpms.html> (i915#1188<https://gitlab.freedesktop.org/drm/intel/issues/1188>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl7/igt@kms_hdr@bpc-switch-dpms.html>
  *   igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html> (fdo#108145<https://bugs.freedesktop.org/show_bug.cgi?id=108145> / i915#265<https://gitlab.freedesktop.org/drm/intel/issues/265>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html>
  *   igt@kms_plane_cursor@pipe-b-primary-size-256:

     *   shard-hsw: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-hsw6/igt@kms_plane_cursor@pipe-b-primary-size-256.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-hsw2/igt@kms_plane_cursor@pipe-b-primary-size-256.html>
  *   igt@kms_psr2_su@page_flip:

     *   shard-iclb: SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb5/igt@kms_psr2_su@page_flip.html> (fdo#109642<https://bugs.freedesktop.org/show_bug.cgi?id=109642> / fdo#111068<https://bugs.freedesktop.org/show_bug.cgi?id=111068>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb2/igt@kms_psr2_su@page_flip.html>
  *   igt@kms_psr@psr2_primary_render:

     *   shard-iclb: SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-iclb3/igt@kms_psr@psr2_primary_render.html> (fdo#109441<https://bugs.freedesktop.org/show_bug.cgi?id=109441>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-iclb2/igt@kms_psr@psr2_primary_render.html>
  *   igt@perf@polling-parameterized:

     *   shard-glk: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-glk5/igt@perf@polling-parameterized.html> (i915#1542<https://gitlab.freedesktop.org/drm/intel/issues/1542>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-glk5/igt@perf@polling-parameterized.html>

Warnings

  *   igt@gem_eio@unwedge-stress:

     *   shard-snb: TIMEOUT<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb6/igt@gem_eio@unwedge-stress.html> -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb4/igt@gem_eio@unwedge-stress.html> (i915#82<https://gitlab.freedesktop.org/drm/intel/issues/82>)
  *   igt@i915_pm_rpm@gem-execbuf-stress-pc8:

     *   shard-snb: INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-snb5/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html> (i915#2377<https://gitlab.freedesktop.org/drm/intel/issues/2377> / i915#82<https://gitlab.freedesktop.org/drm/intel/issues/82>) -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-snb7/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html> (fdo#109271<https://bugs.freedesktop.org/show_bug.cgi?id=109271>)
  *   igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:

     *   shard-tglb: INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9260/shard-tglb3/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html> (i915#1436<https://gitlab.freedesktop.org/drm/intel/issues/1436> / i915#456<https://gitlab.freedesktop.org/drm/intel/issues/456>) -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18848/shard-tglb5/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html> (i915#1436<https://gitlab.freedesktop.org/drm/intel/issues/1436>)

{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).

Participating hosts (11 -> 11)

No changes in participating hosts

Build changes

  *   Linux: CI_DRM_9260 -> Patchwork_18848

CI-20190529: 20190529
CI_DRM_9260: ac7c5c0c0d9c3475169572ccbd5f28f612a2c5a0 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5831: b6247cc06d76b48ec2a3a0b13ffbd25aec8a42ff @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_18848: 22008c258ae8af75c6d146a390fa7345aca56d1b @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
index eaef7a2d041f..a95e6a2ac698 100644
--- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
+++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
@@ -2636,13 +2636,16 @@  static bool cnl_ddi_hdmi_pll_dividers(struct intel_crtc_state *crtc_state)
 }
 
 /*
- * Display WA #22010492432: tgl
+ * Display WA #22010492432: ehl, tgl
  * Program half of the nominal DCO divider fraction value.
  */
 static bool
-tgl_combo_pll_div_frac_wa_needed(struct drm_i915_private *i915)
+ehl_combo_pll_div_frac_wa_needed(struct drm_i915_private *i915)
 {
-	return IS_TIGERLAKE(i915) && i915->dpll.ref_clks.nssc == 38400;
+	return ((IS_PLATFORM(i915, INTEL_ELKHARTLAKE) &&
+		 IS_JSL_EHL_REVID(i915, EHL_REVID_B0, REVID_FOREVER)) ||
+		 IS_TIGERLAKE(i915)) &&
+		 i915->dpll.ref_clks.nssc == 38400;
 }
 
 static int __cnl_ddi_wrpll_get_freq(struct drm_i915_private *dev_priv,
@@ -2696,7 +2699,7 @@  static int __cnl_ddi_wrpll_get_freq(struct drm_i915_private *dev_priv,
 	dco_fraction = (pll_state->cfgcr0 & DPLL_CFGCR0_DCO_FRACTION_MASK) >>
 		       DPLL_CFGCR0_DCO_FRACTION_SHIFT;
 
-	if (tgl_combo_pll_div_frac_wa_needed(dev_priv))
+	if (ehl_combo_pll_div_frac_wa_needed(dev_priv))
 		dco_fraction *= 2;
 
 	dco_freq += (dco_fraction * ref_clock) / 0x8000;
@@ -3086,7 +3089,7 @@  static void icl_calc_dpll_state(struct drm_i915_private *i915,
 
 	memset(pll_state, 0, sizeof(*pll_state));
 
-	if (tgl_combo_pll_div_frac_wa_needed(i915))
+	if (ehl_combo_pll_div_frac_wa_needed(i915))
 		dco_fraction = DIV_ROUND_CLOSEST(dco_fraction, 2);
 
 	pll_state->cfgcr0 = DPLL_CFGCR0_DCO_FRACTION(dco_fraction) |
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index d548e10e1600..1a5645498cb7 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1560,6 +1560,7 @@  extern const struct i915_rev_steppings kbl_revids[];
 	(IS_ICELAKE(p) && IS_REVID(p, since, until))
 
 #define EHL_REVID_A0            0x0
+#define EHL_REVID_B0            0x1
 
 #define IS_JSL_EHL_REVID(p, since, until) \
 	(IS_JSL_EHL(p) && IS_REVID(p, since, until))