summaryrefslogtreecommitdiff
path: root/src/i830_quirks.c
diff options
context:
space:
mode:
authorBill Nottingham <notting@redhat.com>2009-01-24 08:36:20 +0800
committerZhenyu Wang <zhenyu.z.wang@intel.com>2009-01-24 08:36:20 +0800
commite20e1cf76fb00ba4f933a1ed6d1a4896be346c91 (patch)
tree3bff44bea408e82796b71c39deac502388a1032e /src/i830_quirks.c
parent05ff561234cc2b93fe1ea2a35041fa2e119a7e38 (diff)
Quirk MSI IM-945GSE-A LVDS, TV outputs.
The IM-945GSE-A claims to have a TV output, and always claims a connected LVDS output. It has neither.
Diffstat (limited to 'src/i830_quirks.c')
-rw-r--r--src/i830_quirks.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/i830_quirks.c b/src/i830_quirks.c
index f67df4eb..4df1e6cf 100644
--- a/src/i830_quirks.c
+++ b/src/i830_quirks.c
@@ -222,6 +222,20 @@ static void quirk_lenovo_tv_dmi (I830Ptr pI830)
pI830->quirk_flag |= QUIRK_IGNORE_TV;
}
+static void quirk_msi_lvds_dmi (I830Ptr pI830)
+{
+ /* MSI IM-945GSE-A has no TV output, nor a LVDS connection.
+ */
+ if (!i830_dmi_data[board_name]) {
+ ErrorF("Failed to load DMI info, MSI LVDS quirk not applied.\n");
+ return;
+ }
+ if (!strncmp(i830_dmi_data[board_name],"A9830IMS",8)) {
+ pI830->quirk_flag |= QUIRK_IGNORE_LVDS;
+ pI830->quirk_flag |= QUIRK_IGNORE_TV;
+ }
+}
+
static void quirk_ivch_dvob (I830Ptr pI830)
{
pI830->quirk_flag |= QUIRK_IVCH_NEED_DVOB;
@@ -275,6 +289,9 @@ static i830_quirk i830_quirk_list[] = {
/* Lenovo 3000 v200 */
{ PCI_CHIP_I965_GM, 0x17aa, 0x3c18, quirk_ignore_tv },
+ /* MSI IM-945GSE-A has no LVDS or TV (use dmi) */
+ { PCI_CHIP_I945_GME, 0x8086, 0x27ae, quirk_msi_lvds_dmi },
+
/* Panasonic Toughbook CF-Y4 has no TV output */
{ PCI_CHIP_I915_GM, 0x10f7, 0x8338, quirk_ignore_tv },
/* Panasonic Toughbook CF-Y7 has no TV output */