[Saucy][SRU][PATCH 1/1] (no-up) Revert "Revert "drm/i915: revert eDP bpp clamping code changes""
Joseph Salisbury
joseph.salisbury at canonical.com
Wed Oct 16 21:06:52 UTC 2013
On 10/16/2013 04:57 PM, Joseph Salisbury wrote:
> BugLink: http://bugs.launchpad.net/bugs/1195483
>
> This reverts commit 657445fe8660100ad174600ebfa61536392b7624.
>
> Signed-off-by: Joseph Salisbury <joseph.salisbury at canonical.com>
> ---
> drivers/gpu/drm/i915/intel_dp.c | 18 ++++++++++++++----
> 1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 26e162b..ce933ad 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -709,10 +709,7 @@ intel_dp_compute_config(struct intel_encoder *encoder,
>
> /* Walk through all bpp values. Luckily they're all nicely spaced with 2
> * bpc in between. */
> - bpp = pipe_config->pipe_bpp;
> - if (is_edp(intel_dp) && dev_priv->vbt.edp_bpp)
> - bpp = min_t(int, bpp, dev_priv->vbt.edp_bpp);
> -
> + bpp = min_t(int, 8*3, pipe_config->pipe_bpp);
> for (; bpp >= 6*3; bpp -= 2*3) {
> mode_rate = intel_dp_link_required(adjusted_mode->clock, bpp);
>
> @@ -763,6 +760,19 @@ found:
> &pipe_config->dp_m_n);
>
> intel_dp_set_clock(encoder, pipe_config, intel_dp->link_bw);
> + /*
> + * XXX: We have a strange regression where using the vbt edp bpp value
> + * for the link bw computation results in black screens, the panel only
> + * works when we do the computation at the usual 24bpp (but still
> + * requires us to use 18bpp). Until that's fully debugged, stay
> + * bug-for-bug compatible with the old code.
> + */
> + if (is_edp(intel_dp) && dev_priv->vbt.edp_bpp) {
> + DRM_DEBUG_KMS("clamping display bpc (was %d) to eDP (%d)\n",
> + bpp, dev_priv->vbt.edp_bpp);
> + bpp = min_t(int, bpp, dev_priv->vbt.edp_bpp);
> + }
> + pipe_config->pipe_bpp = bpp;
>
> return true;
> }
A proper fix is also being discussed upstream:
https://bugzilla.kernel.org/show_bug.cgi?id=59841
Maybe an alternative to this patch is to add something to the Saucy
release notes until this is fixed upstream?
More information about the kernel-team
mailing list