This is a note to let you know that I've just added the patch titled
drm/i915: do not default to 18 bpp for eDP if missing from VBT
to the 3.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
drm-i915-do-not-default-to-18-bpp-for-edp-if-missing-from-vbt.patch
and it can be found in the queue-3.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
>From 9a30a61f3516871c5c638fd7c025fbaa11ddf7fe Mon Sep 17 00:00:00 2001
From: Jani Nikula <[email protected]>
Date: Mon, 12 Nov 2012 14:33:45 +0200
Subject: drm/i915: do not default to 18 bpp for eDP if missing from VBT
From: Jani Nikula <[email protected]>
commit 9a30a61f3516871c5c638fd7c025fbaa11ddf7fe upstream.
commit 500a8cc466a24e2fbc4c86ef9c6467ae2ffdeb0c
Author: Zhenyu Wang <[email protected]>
Date: Wed Jan 13 11:19:52 2010 +0800
drm/i915: parse eDP panel color depth from VBT block
originally introduced parsing bpp for eDP from VBT, with a default of 18
bpp if the eDP BIOS data block is not present. Turns out that default seems
to break the Macbook Pro with retina display, as noted in
commit 4344b813f105a19f793f1fd93ad775b784648b95
Author: Daniel Vetter <[email protected]>
Date: Fri Aug 10 11:10:20 2012 +0200
drm/i915: ignore eDP bpc settings from vbt
Since we can't ignore bpc settings from VBT completely after all, get rid
of the default. Do not clamp eDP to 18 bpp by default if the eDP BDB is
missing from VBT.
Signed-off-by: Jani Nikula <[email protected]>
Tested-by: Henrik Rydberg <[email protected]>
[danvet: paste in the updated commit message from irc.]
Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/gpu/drm/i915/intel_bios.c | 11 ++---------
drivers/gpu/drm/i915/intel_display.c | 2 +-
2 files changed, 3 insertions(+), 10 deletions(-)
--- a/drivers/gpu/drm/i915/intel_bios.c
+++ b/drivers/gpu/drm/i915/intel_bios.c
@@ -459,12 +459,8 @@ parse_edp(struct drm_i915_private *dev_p
edp = find_section(bdb, BDB_EDP);
if (!edp) {
- if (SUPPORTS_EDP(dev_priv->dev) && dev_priv->edp.support) {
- DRM_DEBUG_KMS("No eDP BDB found but eDP panel "
- "supported, assume %dbpp panel color "
- "depth.\n",
- dev_priv->edp.bpp);
- }
+ if (SUPPORTS_EDP(dev_priv->dev) && dev_priv->edp.support)
+ DRM_DEBUG_KMS("No eDP BDB found but eDP panel
supported.\n");
return;
}
@@ -617,9 +613,6 @@ init_vbt_defaults(struct drm_i915_privat
dev_priv->lvds_use_ssc = 1;
dev_priv->lvds_ssc_freq = intel_bios_ssc_frequency(dev, 1);
DRM_DEBUG_KMS("Set default to SSC at %dMHz\n", dev_priv->lvds_ssc_freq);
-
- /* eDP data */
- dev_priv->edp.bpp = 18;
}
static int __init intel_no_opregion_vbt_callback(const struct dmi_system_id
*id)
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -5000,7 +5000,7 @@ static bool intel_choose_pipe_bpp_dither
/* Use VBT settings if we have an eDP panel */
unsigned int edp_bpc = dev_priv->edp.bpp / 3;
- if (edp_bpc < display_bpc) {
+ if (edp_bpc && edp_bpc < display_bpc) {
DRM_DEBUG_KMS("clamping display bpc (was %d) to
eDP (%d)\n", display_bpc, edp_bpc);
display_bpc = edp_bpc;
}
Patches currently in stable-queue which might be from [email protected] are
queue-3.4/drm-i915-do-not-ignore-edp-bpc-settings-from-vbt.patch
queue-3.4/drm-i915-do-not-default-to-18-bpp-for-edp-if-missing-from-vbt.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html