diff --git a/src/i830_quirks.c b/src/i830_quirks.c index 8680baf..d7311b6 100644 --- a/src/i830_quirks.c +++ b/src/i830_quirks.c @@ -236,6 +236,22 @@ static void quirk_msi_lvds_dmi (I830Ptr pI830) } } +static void quirk_ibase_lvds (I830Ptr pI830) +{ + ErrorF("ibase: LVDS quirk check!\n"); + if (!i830_dmi_data[board_name]) { + ErrorF("Failed to load DMI info, iBase LVDS quirk not applied.\n"); + return; + } + if (!strncmp(i830_dmi_data[board_name], "i855-W83627HF", 13)) { + ErrorF("ibase: matching board name found!\n"); + pI830->quirk_flag |= QUIRK_IGNORE_LVDS; + } + else + ErrorF("ibase: non-match board name %s\n", + i830_dmi_data[board_name]); +} + static void quirk_ivch_dvob (I830Ptr pI830) { pI830->quirk_flag |= QUIRK_IVCH_NEED_DVOB; @@ -379,6 +395,8 @@ static i830_quirk i830_quirk_list[] = { /* #19239: Mirrus Centrino laptop */ { PCI_CHIP_I915_GM, 0x1584, 0x9800, quirk_broken_acpi_lid }, + /* #19529: iBase MB890 board */ + { PCI_CHIP_I855_GM, 0x8086, 0x3582, quirk_ibase_lvds }, { 0, 0, 0, NULL }, };