linux/debian/patches/bugfix/all/drm-i915-give-up-on-8xx-lid...

36 lines
1.3 KiB
Diff

From patchwork Fri Feb 12 17:30:00 2010
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: drm/i915: give up on 8xx lid status
Date: Fri, 12 Feb 2010 17:30:00 -0000
From: Jesse Barnes <jbarnes@virtuousgeek.org>
X-Patchwork-Id: 78947
Message-Id: <20100212093000.5cead4da@jbarnes-piketon>
To: intel-gfx@lists.freedesktop.org, eric@anholt.net
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.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
index 75a9772..9f4855b 100644
--- a/drivers/gpu/drm/i915/intel_lvds.c
+++ b/drivers/gpu/drm/i915/intel_lvds.c
@@ -641,8 +641,12 @@ static const struct dmi_system_id bad_lid_status[] = {
*/
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;
+ if (IS_I8XX(dev))
+ return connector_status_connected;
+
if (!acpi_lid_open() && !dmi_check_system(bad_lid_status))
status = connector_status_disconnected;