Commit 250312c4 authored by Jesse Barnes's avatar Jesse Barnes Committed by Greg Kroah-Hartman

drm/i915: give up on 8xx lid status

commit 7b9c5abe upstream.

These old machines more often than not lie about their lid state.  So
don't use it to detect LVDS presence, but leave the event handler to
deal with lid open/close, when we might need to reset the mode.

Fixes kernel bug #15248
Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: default avatarEric Anholt <eric@anholt.net>
Cc: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 6b2c1eb8
...@@ -648,8 +648,12 @@ static const struct dmi_system_id bad_lid_status[] = { ...@@ -648,8 +648,12 @@ static const struct dmi_system_id bad_lid_status[] = {
*/ */
static enum drm_connector_status intel_lvds_detect(struct drm_connector *connector) static enum drm_connector_status intel_lvds_detect(struct drm_connector *connector)
{ {
struct drm_device *dev = connector->dev;
enum drm_connector_status status = connector_status_connected; enum drm_connector_status status = connector_status_connected;
if (IS_I8XX(dev))
return connector_status_connected;
if (!acpi_lid_open() && !dmi_check_system(bad_lid_status)) if (!acpi_lid_open() && !dmi_check_system(bad_lid_status))
status = connector_status_disconnected; status = connector_status_disconnected;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment