@@ -45,6 +45,9 @@ module_param_named(fbpercrtc, i915_fbpercrtc, int, 0400);
unsigned int i915_powersave = 1;
module_param_named(powersave, i915_powersave, int, 0400);
+unsigned int i915_lvds_use_lid = 1;
+module_param_named(lvds_use_lid, i915_lvds_use_lid, int, 0400);
+
unsigned int i915_lvds_downclock = 0;
module_param_named(lvds_downclock, i915_lvds_downclock, int, 0400);
@@ -755,6 +755,7 @@ extern struct drm_ioctl_desc i915_ioctls[];
extern int i915_max_ioctl;
extern unsigned int i915_fbpercrtc;
extern unsigned int i915_powersave;
+extern unsigned int i915_lvds_use_lid;
extern unsigned int i915_lvds_downclock;
extern void i915_save_display(struct drm_device *dev);
@@ -643,7 +643,9 @@ static enum drm_connector_status intel_lvds_detect(struct drm_connector *connect
{
enum drm_connector_status status = connector_status_connected;
- if (!dmi_check_system(bad_lid_status) && !acpi_lid_open())
+ if (i915_lvds_use_lid &&
+ !dmi_check_system(bad_lid_status) &&
+ !acpi_lid_open())
status = connector_status_disconnected;
return status;