diff options
Diffstat (limited to '0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch')
-rw-r--r-- | 0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch b/0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch new file mode 100644 index 000000000..1b37e3883 --- /dev/null +++ b/0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch @@ -0,0 +1,56 @@ +From 883e2c26855e19e19bfb985221ae5a09db26a1c4 Mon Sep 17 00:00:00 2001 +From: Josh Boyer <jwboyer@obiwan.gha.chartermi.net> +Date: Fri, 3 May 2013 17:10:32 -0400 +Subject: [PATCH] Revert "drm/i915: revert eDP bpp clamping code changes" + +This reverts commit 57c219633275c7e7413f8bc7be250dc092887458. +--- + drivers/gpu/drm/i915/intel_dp.c | 18 ++++-------------- + 1 file changed, 4 insertions(+), 14 deletions(-) + +diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c +index fb2fbc1..e0ee2ca 100644 +--- a/drivers/gpu/drm/i915/intel_dp.c ++++ b/drivers/gpu/drm/i915/intel_dp.c +@@ -702,6 +702,9 @@ 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 = min_t(int, 8*3, pipe_config->pipe_bpp); ++ if (is_edp(intel_dp) && dev_priv->edp.bpp) ++ bpp = min_t(int, bpp, dev_priv->edp.bpp); ++ + for (; bpp >= 6*3; bpp -= 2*3) { + mode_rate = intel_dp_link_required(target_clock, bpp); + +@@ -739,6 +742,7 @@ found: + intel_dp->link_bw = bws[clock]; + intel_dp->lane_count = lane_count; + adjusted_mode->clock = drm_dp_bw_code_to_link_rate(intel_dp->link_bw); ++ pipe_config->pipe_bpp = bpp; + pipe_config->pixel_target_clock = target_clock; + + DRM_DEBUG_KMS("DP link bw %02x lane count %d clock %d bpp %d\n", +@@ -751,20 +755,6 @@ found: + target_clock, adjusted_mode->clock, + &pipe_config->dp_m_n); + +- /* +- * 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->edp.bpp) { +- DRM_DEBUG_KMS("clamping display bpc (was %d) to eDP (%d)\n", +- bpp, dev_priv->edp.bpp); +- bpp = min_t(int, bpp, dev_priv->edp.bpp); +- } +- pipe_config->pipe_bpp = bpp; +- + return true; + } + +-- +1.8.2.1 + |