Message ID | 1269982747-16679-3-git-send-email-surbhi.palande@canonical.com |
---|---|
State | Accepted |
Delegated to: | Andy Whitcroft |
Headers | show |
Surbhi Palande wrote: > From: Eric Anholt <eric@anholt.net> > > BugLink: http://launchpad.net/bugs/515246 > > 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> (cherry picked from commit 6e6c822868f113dabe3c33bdd91e883cc28fa11b upstream) > > Signed-off-by: Surbhi Palande <surbhi.palande@canonical.com> Acked-by: Stefan Bader <stefan.bader@canonical.com> > --- > 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 e91e81d..f442ec9 100644 > --- a/drivers/gpu/drm/i915/intel_lvds.c > +++ b/drivers/gpu/drm/i915/intel_lvds.c > @@ -599,53 +599,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. > * > @@ -661,12 +614,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; > } >
On Tue, 2010-03-30 at 23:59 +0300, Surbhi Palande wrote: > From: Eric Anholt <eric@anholt.net> > > BugLink: http://launchpad.net/bugs/515246 > > 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> > (cherry picked from commit 6e6c822868f113dabe3c33bdd91e883cc28fa11b) > > Signed-off-by: Surbhi Palande <surbhi.palande@canonical.com> Acked-by: Steve Conklin <steve.conklin@canonical.com> > --- > 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 e91e81d..f442ec9 100644 > --- a/drivers/gpu/drm/i915/intel_lvds.c > +++ b/drivers/gpu/drm/i915/intel_lvds.c > @@ -599,53 +599,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. > * > @@ -661,12 +614,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.6.3.3 > >
diff --git a/drivers/gpu/drm/i915/intel_lvds.c b/drivers/gpu/drm/i915/intel_lvds.c index e91e81d..f442ec9 100644 --- a/drivers/gpu/drm/i915/intel_lvds.c +++ b/drivers/gpu/drm/i915/intel_lvds.c @@ -599,53 +599,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. * @@ -661,12 +614,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; }