94 lines
2.6 KiB
Diff
94 lines
2.6 KiB
Diff
From: Eric Anholt <eric@anholt.net>
|
|
Date: Wed, 17 Mar 2010 13:48:06 -0700
|
|
Subject: [PATCH] drm/i915: Stop trying to use ACPI lid status to determine LVDS connection.
|
|
|
|
commit 6e6c822868f113dabe3c33bdd91e883cc28fa11b upstream.
|
|
|
|
I've been getting more and more quirk reports about this. It seems
|
|
clear at this point that other OSes are not using this for determining
|
|
whether the integrated panel should be turned on, and it is not
|
|
reliable for doing so. Better to light up an unintended panel than to
|
|
not light up the only usable output on the system.
|
|
|
|
Signed-off-by: Eric Anholt <eric@anholt.net>
|
|
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
|
|
---
|
|
drivers/gpu/drm/i915/intel_lvds.c | 52 +------------------------------------
|
|
1 files changed, 1 insertions(+), 51 deletions(-)
|
|
|
|
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c
|
|
index 14e516f..2b3fa7a 100644
|
|
--- a/drivers/gpu/drm/i915/intel_lvds.c
|
|
+++ b/drivers/gpu/drm/i915/intel_lvds.c
|
|
@@ -607,53 +607,6 @@ static void intel_lvds_mode_set(struct drm_encoder *encoder,
|
|
I915_WRITE(PFIT_CONTROL, lvds_priv->pfit_control);
|
|
}
|
|
|
|
-/* Some lid devices report incorrect lid status, assume they're connected */
|
|
-static const struct dmi_system_id bad_lid_status[] = {
|
|
- {
|
|
- .ident = "Compaq nx9020",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
|
|
- DMI_MATCH(DMI_BOARD_NAME, "3084"),
|
|
- },
|
|
- },
|
|
- {
|
|
- .ident = "Samsung SX20S",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "Samsung Electronics"),
|
|
- DMI_MATCH(DMI_BOARD_NAME, "SX20S"),
|
|
- },
|
|
- },
|
|
- {
|
|
- .ident = "Aspire One",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
|
|
- DMI_MATCH(DMI_PRODUCT_NAME, "Aspire one"),
|
|
- },
|
|
- },
|
|
- {
|
|
- .ident = "Aspire 1810T",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
|
|
- DMI_MATCH(DMI_PRODUCT_NAME, "Aspire 1810T"),
|
|
- },
|
|
- },
|
|
- {
|
|
- .ident = "PC-81005",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "MALATA"),
|
|
- DMI_MATCH(DMI_PRODUCT_NAME, "PC-81005"),
|
|
- },
|
|
- },
|
|
- {
|
|
- .ident = "Clevo M5x0N",
|
|
- .matches = {
|
|
- DMI_MATCH(DMI_SYS_VENDOR, "CLEVO Co."),
|
|
- DMI_MATCH(DMI_BOARD_NAME, "M5x0N"),
|
|
- },
|
|
- },
|
|
- { }
|
|
-};
|
|
-
|
|
/**
|
|
* Detect the LVDS connection.
|
|
*
|
|
@@ -669,12 +622,9 @@ static enum drm_connector_status intel_lvds_detect(struct drm_connector *connect
|
|
/* ACPI lid methods were generally unreliable in this generation, so
|
|
* don't even bother.
|
|
*/
|
|
- if (IS_GEN2(dev))
|
|
+ if (IS_GEN2(dev) || IS_GEN3(dev))
|
|
return connector_status_connected;
|
|
|
|
- if (!dmi_check_system(bad_lid_status) && !acpi_lid_open())
|
|
- status = connector_status_disconnected;
|
|
-
|
|
return status;
|
|
}
|
|
|
|
--
|
|
1.7.1
|
|
|