[Intel-gfx] [PATCH 2/2] drm/i915: LVDS fallback to fixed-mode if EDID not present
Chris Wilson
chris at chris-wilson.co.uk
Wed Nov 21 17:14:04 CET 2012
Use the recorded panel fixed-mode to populate the get_modes() request in
the absence of an EDID.
Fixes regression from
commit 9cd300e038d492af4990b04e127e0bd2df64b1ca
Author: Jani Nikula <jani.nikula at intel.com>
Date: Fri Oct 19 14:51:52 2012 +0300
drm/i915: Move cached EDID to intel_connector
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula at intel.com>
Cc: Jesse Barnes <jbarnes at virtuousgeek.org>
---
drivers/gpu/drm/i915/intel_lvds.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
index 5b38c17..189390e 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
@@ -480,13 +480,8 @@ static int intel_lvds_get_modes(struct drm_connector *connector)
struct drm_display_mode *mode;
/* use cached edid if we have one */
- if (lvds_connector->base.edid) {
- /* invalid edid */
- if (IS_ERR(lvds_connector->base.edid))
- return 0;
-
+ if (!IS_ERR_OR_NULL(lvds_connector->base.edid))
return drm_add_edid_modes(connector, lvds_connector->base.edid);
- }
mode = drm_mode_duplicate(dev, lvds_connector->base.panel.fixed_mode);
if (mode == NULL)
@@ -1065,8 +1060,6 @@ bool intel_lvds_init(struct drm_device *dev)
kfree(edid);
edid = ERR_PTR(-EINVAL);
}
- } else {
- edid = ERR_PTR(-ENOENT);
}
lvds_connector->base.edid = edid;
--
1.7.10.4
More information about the Intel-gfx
mailing list