summaryrefslogtreecommitdiffstats
path: root/0001-Revert-drm-i915-revert-eDP-bpp-clamping-code-changes.patch
diff options
context:
space:
mode:
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.patch56
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
+