diff options
Diffstat (limited to 'meta-moblin/packages/linux/linux-moblin-2.6.33.2/linux-2.6.34-drm-i915-Ignore-LVDS-EDID-when-it-is-unavailabe-or-invalid.patch')
-rw-r--r-- | meta-moblin/packages/linux/linux-moblin-2.6.33.2/linux-2.6.34-drm-i915-Ignore-LVDS-EDID-when-it-is-unavailabe-or-invalid.patch | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/meta-moblin/packages/linux/linux-moblin-2.6.33.2/linux-2.6.34-drm-i915-Ignore-LVDS-EDID-when-it-is-unavailabe-or-invalid.patch b/meta-moblin/packages/linux/linux-moblin-2.6.33.2/linux-2.6.34-drm-i915-Ignore-LVDS-EDID-when-it-is-unavailabe-or-invalid.patch deleted file mode 100644 index f2ee81104..000000000 --- a/meta-moblin/packages/linux/linux-moblin-2.6.33.2/linux-2.6.34-drm-i915-Ignore-LVDS-EDID-when-it-is-unavailabe-or-invalid.patch +++ /dev/null @@ -1,67 +0,0 @@ -Subject: [3/3] drm/i915: Ignore LVDS EDID when it is unavailabe or invalid -Date: Thu, 04 Mar 2010 08:17:31 -0000 -From: Zhenyu Wang <zhenyuw@linux.intel.com> -Patch-mainline: 2.6.34 -References: https://patchwork.kernel.org/patch/83556/, BMC# 331 - -From: Zhao Yakui <yakui.zhao@intel.com> - -In course of probing the display mode for LVDS, we will firstly try to -check the EDID for LVDS panel. But on some laptops the EDID is invalid for -the LVDS panel. In such case it will complain the invalida EDID warning -message and print the EDID raw data every time when probing the LVDS mode. - -https://bugs.freedesktop.org/show_bug.cgi?id=23099 -https://bugs.freedesktop.org/show_bug.cgi?id=26395 - -Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> -Tested-by: Sitsofe Wheeler <sitsofe@yahoo.com> -Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> -Acked-by: Yin Kangkai <kangkai.yin@intel.com> - ---- - drivers/gpu/drm/i915/i915_drv.h | 2 ++ - drivers/gpu/drm/i915/intel_lvds.c | 13 +++++++++---- - 2 files changed, 11 insertions(+), 4 deletions(-) - ---- a/drivers/gpu/drm/i915/i915_drv.h -+++ b/drivers/gpu/drm/i915/i915_drv.h -@@ -581,6 +581,8 @@ typedef struct drm_i915_private { - /* Reclocking support */ - bool render_reclock_avail; - bool lvds_downclock_avail; -+ /* indicate whether the LVDS EDID is OK */ -+ bool lvds_edid_ok; - /* indicates the reduced downclock for LVDS*/ - int lvds_downclock; - struct work_struct idle_work; ---- a/drivers/gpu/drm/i915/intel_lvds.c -+++ b/drivers/gpu/drm/i915/intel_lvds.c -@@ -680,10 +680,13 @@ static int intel_lvds_get_modes(struct d - struct drm_i915_private *dev_priv = dev->dev_private; - int ret = 0; - -- ret = intel_ddc_get_modes(intel_output); -+ if (dev_priv->lvds_edid_ok) { -+ ret = intel_ddc_get_modes(intel_output); -+ if (ret) -+ return ret; - -- if (ret) -- return ret; -+ dev_priv->lvds_edid_ok = false; -+ } - - /* Didn't get an EDID, so - * Set wide sync ranges so we get all modes -@@ -1097,7 +1100,9 @@ void intel_lvds_init(struct drm_device * - * Attempt to get the fixed panel mode from DDC. Assume that the - * preferred mode is the right one. - */ -- intel_ddc_get_modes(intel_output); -+ dev_priv->lvds_edid_ok = true; -+ if (!intel_ddc_get_modes(intel_output)) -+ dev_priv->lvds_edid_ok = false; - - list_for_each_entry(scan, &connector->probed_modes, head) { - mutex_lock(&dev->mode_config.mutex); |