summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-11-21 17:14:04 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-11-22 22:06:31 +0100
commit2aa4f09917d9854928074bb5bf1b9d8a9364a67f (patch)
treef1be54e60b696333cef8c3d220bb9a6f325bcf41
parentdrm/i915/sdvo: kfree the intel_sdvo_connector, not drm_connector, on destroy (diff)
downloadlinux-2aa4f09917d9854928074bb5bf1b9d8a9364a67f.tar.xz
linux-2aa4f09917d9854928074bb5bf1b9d8a9364a67f.zip
drm/i915: LVDS fallback to fixed-mode if EDID not present
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@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@chris-wilson.co.uk> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Jesse Barnes <jbarnes@virtuousgeek.org> Reviewed-by: Jani Nikula <jani.nikula@intel.com> [danvet: Drop the retval-changing hunk, as suggested by Jani in his review and acked by Chris.] Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--drivers/gpu/drm/i915/intel_lvds.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
index 506cfbdd6bab..2e266277f035 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
@@ -460,13 +460,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)