From: "Ville Syrjälä" <ville.syrjala@linux.intel.com> To: Kai-Heng Feng <kai.heng.feng@canonical.com> Cc: jani.nikula@linux.intel.com, joonas.lahtinen@linux.intel.com, rodrigo.vivi@intel.com, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Imre Deak" <imre.deak@intel.com>, "Uma Shankar" <uma.shankar@intel.com>, "Manasi Navare" <manasi.d.navare@intel.com>, "Ankit Nautiyal" <ankit.k.nautiyal@intel.com>, "José Roberto de Souza" <jose.souza@intel.com>, "Sean Paul" <seanpaul@chromium.org>, intel-gfx@lists.freedesktop.org, "open list:DRM DRIVERS" <dri-devel@lists.freedesktop.org>, "open list" <linux-kernel@vger.kernel.org> Subject: Re: [PATCH] drm/i915/dp: Use max params for older panels Date: Mon, 16 Aug 2021 19:42:30 +0300 [thread overview] Message-ID: <YRqVdjxMv3R+XbF+@intel.com> (raw) In-Reply-To: <20210804152408.584823-1-kai.heng.feng@canonical.com> On Wed, Aug 04, 2021 at 11:24:02PM +0800, Kai-Heng Feng wrote: > Users reported that after commit 2bbd6dba84d4 ("drm/i915: Try to use > fast+narrow link on eDP again and fall back to the old max strategy on > failure"), the screen starts to have wobbly effect. > > Commit a5c936add6a2 ("drm/i915/dp: Use slow and wide link training for > everything") doesn't help either, that means the affected panels only > work with max params. Unfortunate that the link training apparently passes with the bad params and thus the automagic use_max_params fallback doesn't kick in :( > > The panels are all DP 1.1 ones, so apply max params to them to resolve > the issue. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3714 > Fixes: 2bbd6dba84d4 ("drm/i915: Try to use fast+narrow link on eDP again and fall back to the old max strategy on failure") > Fixes: a5c936add6a2 ("drm/i915/dp: Use slow and wide link training for everything") > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > --- > drivers/gpu/drm/i915/display/intel_dp.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 75d4ebc669411..e64bab4b016e1 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -1330,14 +1330,16 @@ intel_dp_compute_link_config(struct intel_encoder *encoder, > limits.min_bpp = intel_dp_min_bpp(pipe_config->output_format); > limits.max_bpp = intel_dp_max_bpp(intel_dp, pipe_config); > > - if (intel_dp->use_max_params) { > + if (intel_dp->use_max_params || > + intel_dp->dpcd[DP_DPCD_REV] <= DP_DPCD_REV_11) { IIRC Windows uses the optimal link rate only for EPD_REV>=1.4. We should probably do the same the minimize future headaches. > /* > * Use the maximum clock and number of lanes the eDP panel > * advertizes being capable of in case the initial fast > - * optimal params failed us. The panels are generally > - * designed to support only a single clock and lane > - * configuration, and typically on older panels these > - * values correspond to the native resolution of the panel. > + * optimal params failed us or the panel is DP 1.1 or earlier. > + * The panels are generally designed to support only a single > + * clock and lane configuration, and typically on older panels > + * these values correspond to the native resolution of the > + * panel. > */ > limits.min_lane_count = limits.max_lane_count; > limits.min_clock = limits.max_clock; > -- > 2.31.1 -- Ville Syrjälä Intel
WARNING: multiple messages have this Message-ID (diff)
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com> To: Kai-Heng Feng <kai.heng.feng@canonical.com> Cc: jani.nikula@linux.intel.com, joonas.lahtinen@linux.intel.com, rodrigo.vivi@intel.com, "David Airlie" <airlied@linux.ie>, "Daniel Vetter" <daniel@ffwll.ch>, "Imre Deak" <imre.deak@intel.com>, "Uma Shankar" <uma.shankar@intel.com>, "Manasi Navare" <manasi.d.navare@intel.com>, "Ankit Nautiyal" <ankit.k.nautiyal@intel.com>, "José Roberto de Souza" <jose.souza@intel.com>, "Sean Paul" <seanpaul@chromium.org>, intel-gfx@lists.freedesktop.org, "open list:DRM DRIVERS" <dri-devel@lists.freedesktop.org>, "open list" <linux-kernel@vger.kernel.org> Subject: Re: [Intel-gfx] [PATCH] drm/i915/dp: Use max params for older panels Date: Mon, 16 Aug 2021 19:42:30 +0300 [thread overview] Message-ID: <YRqVdjxMv3R+XbF+@intel.com> (raw) In-Reply-To: <20210804152408.584823-1-kai.heng.feng@canonical.com> On Wed, Aug 04, 2021 at 11:24:02PM +0800, Kai-Heng Feng wrote: > Users reported that after commit 2bbd6dba84d4 ("drm/i915: Try to use > fast+narrow link on eDP again and fall back to the old max strategy on > failure"), the screen starts to have wobbly effect. > > Commit a5c936add6a2 ("drm/i915/dp: Use slow and wide link training for > everything") doesn't help either, that means the affected panels only > work with max params. Unfortunate that the link training apparently passes with the bad params and thus the automagic use_max_params fallback doesn't kick in :( > > The panels are all DP 1.1 ones, so apply max params to them to resolve > the issue. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3714 > Fixes: 2bbd6dba84d4 ("drm/i915: Try to use fast+narrow link on eDP again and fall back to the old max strategy on failure") > Fixes: a5c936add6a2 ("drm/i915/dp: Use slow and wide link training for everything") > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > --- > drivers/gpu/drm/i915/display/intel_dp.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 75d4ebc669411..e64bab4b016e1 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -1330,14 +1330,16 @@ intel_dp_compute_link_config(struct intel_encoder *encoder, > limits.min_bpp = intel_dp_min_bpp(pipe_config->output_format); > limits.max_bpp = intel_dp_max_bpp(intel_dp, pipe_config); > > - if (intel_dp->use_max_params) { > + if (intel_dp->use_max_params || > + intel_dp->dpcd[DP_DPCD_REV] <= DP_DPCD_REV_11) { IIRC Windows uses the optimal link rate only for EPD_REV>=1.4. We should probably do the same the minimize future headaches. > /* > * Use the maximum clock and number of lanes the eDP panel > * advertizes being capable of in case the initial fast > - * optimal params failed us. The panels are generally > - * designed to support only a single clock and lane > - * configuration, and typically on older panels these > - * values correspond to the native resolution of the panel. > + * optimal params failed us or the panel is DP 1.1 or earlier. > + * The panels are generally designed to support only a single > + * clock and lane configuration, and typically on older panels > + * these values correspond to the native resolution of the > + * panel. > */ > limits.min_lane_count = limits.max_lane_count; > limits.min_clock = limits.max_clock; > -- > 2.31.1 -- Ville Syrjälä Intel
next prev parent reply other threads:[~2021-08-16 16:42 UTC|newest] Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-08-04 15:24 [PATCH] drm/i915/dp: Use max params for older panels Kai-Heng Feng 2021-08-04 15:24 ` [Intel-gfx] " Kai-Heng Feng 2021-08-04 15:50 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork 2021-08-04 16:13 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork 2021-08-05 15:41 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 2021-08-16 16:42 ` Ville Syrjälä [this message] 2021-08-16 16:42 ` [Intel-gfx] [PATCH] " Ville Syrjälä
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=YRqVdjxMv3R+XbF+@intel.com \ --to=ville.syrjala@linux.intel.com \ --cc=airlied@linux.ie \ --cc=ankit.k.nautiyal@intel.com \ --cc=daniel@ffwll.ch \ --cc=dri-devel@lists.freedesktop.org \ --cc=imre.deak@intel.com \ --cc=intel-gfx@lists.freedesktop.org \ --cc=jani.nikula@linux.intel.com \ --cc=joonas.lahtinen@linux.intel.com \ --cc=jose.souza@intel.com \ --cc=kai.heng.feng@canonical.com \ --cc=linux-kernel@vger.kernel.org \ --cc=manasi.d.navare@intel.com \ --cc=rodrigo.vivi@intel.com \ --cc=seanpaul@chromium.org \ --cc=uma.shankar@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.