summaryrefslogtreecommitdiff
path: root/src/i830_quirks.c
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyu.z.wang@intel.com>2008-12-29 10:05:17 +0800
committerZhenyu Wang <zhenyu.z.wang@intel.com>2008-12-29 10:05:17 +0800
commitfcd280b730f86ea54ecd89d3e037e71f8375b5f5 (patch)
treed61153102c2f69613f4af5fbd8074b22fcebb776 /src/i830_quirks.c
parent6b9f421b792c701e909d81ae2b6e6a47fb069b0b (diff)
Bug #19239: Add a quirk for broken ACPI lid state
For broken hardware/bios with incorrect ACPI LID state, there's machine that can not be fixed in ACPI way, customed DSDT that reprogram _LID method to read EC state. Although this is ACPI issue, this quirk can be used to work around that.
Diffstat (limited to 'src/i830_quirks.c')
-rw-r--r--src/i830_quirks.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/i830_quirks.c b/src/i830_quirks.c
index 68e39eee..67043765 100644
--- a/src/i830_quirks.c
+++ b/src/i830_quirks.c
@@ -227,6 +227,13 @@ static void quirk_ivch_dvob (I830Ptr pI830)
pI830->quirk_flag |= QUIRK_IVCH_NEED_DVOB;
}
+/* For broken hw/bios for incorrect acpi _LID state that
+ can't be fixed with customed DSDT or other way */
+static void quirk_broken_acpi_lid (I830Ptr pI830)
+{
+ pI830->quirk_flag |= QUIRK_BROKEN_ACPI_LID;
+}
+
/* keep this list sorted by OEM, then by chip ID */
static i830_quirk i830_quirk_list[] = {
/* Aopen mini pc */
@@ -347,6 +354,9 @@ static i830_quirk i830_quirk_list[] = {
/* Asus Eee Box has no LVDS */
{ PCI_CHIP_I945_GME, 0x1043, 0x1252, quirk_ignore_lvds },
+ /* #19239: Mirrus Centrino laptop */
+ { PCI_CHIP_I915_GM, 0x1584, 0x9800, quirk_broken_acpi_lid },
+
{ 0, 0, 0, NULL },
};