--- linux-2.6.39-rc1-git5/drivers/gpu/drm/i915/intel_lvds.c 2011-04-14 21:01:22.000000000 +0200 +++ linux-2.6.39-rc1-git4/drivers/gpu/drm/i915/intel_lvds.c 2011-04-17 15:02:07.000000000 +0200 @@ -473,13 +473,19 @@ intel_lvds_detect(struct drm_connector *connector, bool force) { struct drm_device *dev = connector->dev; - enum drm_connector_status status; + enum drm_connector_status status = connector_status_connected; status = intel_panel_detect(dev); if (status != connector_status_unknown) return status; - return connector_status_connected; + /* ACPI lid methods were generally unreliable in this generation, so + * don't even bother. + */ + if (IS_GEN2(dev) || IS_GEN3(dev)) + return connector_status_connected; + + return status; } /**