diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-10-12 06:43:21 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-12 06:43:21 -0400 |
commit | acbaa41a780490c791492c41144c774c04875af1 (patch) | |
tree | 31f1f046875eb071e2aed031e5d9d1584742314f /arch/x86/kernel/early-quirks.c | |
parent | 8d89adf44cf750e49691ba5b744b2ad77a05e997 (diff) | |
parent | fd048088306656824958e7783ffcee27e241b361 (diff) |
Merge branch 'linus' into x86/quirks
Conflicts:
arch/x86/kernel/early-quirks.c
Diffstat (limited to 'arch/x86/kernel/early-quirks.c')
-rw-r--r-- | arch/x86/kernel/early-quirks.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c index 6b839b147644..733c4f8d42ea 100644 --- a/arch/x86/kernel/early-quirks.c +++ b/arch/x86/kernel/early-quirks.c | |||
@@ -141,6 +141,20 @@ static void __init ati_bugs(int num, int slot, int func) | |||
141 | #endif | 141 | #endif |
142 | } | 142 | } |
143 | 143 | ||
144 | #ifdef CONFIG_DMAR | ||
145 | static void __init intel_g33_dmar(int num, int slot, int func) | ||
146 | { | ||
147 | struct acpi_table_header *dmar_tbl; | ||
148 | acpi_status status; | ||
149 | |||
150 | status = acpi_get_table(ACPI_SIG_DMAR, 0, &dmar_tbl); | ||
151 | if (ACPI_SUCCESS(status)) { | ||
152 | printk(KERN_INFO "BIOS BUG: DMAR advertised on Intel G31/G33 chipset -- ignoring\n"); | ||
153 | dmar_disabled = 1; | ||
154 | } | ||
155 | } | ||
156 | #endif | ||
157 | |||
144 | #define QFLAG_APPLY_ONCE 0x1 | 158 | #define QFLAG_APPLY_ONCE 0x1 |
145 | #define QFLAG_APPLIED 0x2 | 159 | #define QFLAG_APPLIED 0x2 |
146 | #define QFLAG_DONE (QFLAG_APPLY_ONCE|QFLAG_APPLIED) | 160 | #define QFLAG_DONE (QFLAG_APPLY_ONCE|QFLAG_APPLIED) |
@@ -162,6 +176,10 @@ static struct chipset early_qrk[] __initdata = { | |||
162 | PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, fix_hypertransport_config }, | 176 | PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, fix_hypertransport_config }, |
163 | { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS, | 177 | { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_IXP400_SMBUS, |
164 | PCI_CLASS_SERIAL_SMBUS, PCI_ANY_ID, 0, ati_bugs }, | 178 | PCI_CLASS_SERIAL_SMBUS, PCI_ANY_ID, 0, ati_bugs }, |
179 | #ifdef CONFIG_DMAR | ||
180 | { PCI_VENDOR_ID_INTEL, 0x29c0, | ||
181 | PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, intel_g33_dmar }, | ||
182 | #endif | ||
165 | {} | 183 | {} |
166 | }; | 184 | }; |
167 | 185 | ||