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 |
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 >
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 --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))
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(-)