aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2008-07-11 20:50:15 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-12 00:44:58 -0400
commitda1f29f5dfcc8641f9ff6f3deaa9f03b57e63229 (patch)
tree11c21425a4b0822d6fab7faa4f9da7717fe31b15 /arch/x86
parent6c82a000a29b93541b5b7db597a083c069755cc9 (diff)
x86: remove conflicting nx6325 and nx6125 quirks
We have two conflicting DMA-based quirks in there for the same set of boxes (HP nx6325 and nx6125) and one of them actually breaks my box. So remove the extra code. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: =?iso-8859-1?q?T=F6r=F6k_Edwin?= <edwintorok@gmail.com> Cc: Vegard Nossum <vegard.nossum@gmail.com> Cc: Andreas Herrmann <andreas.herrmann3@amd.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kernel/acpi/boot.c47
1 files changed, 0 insertions, 47 deletions
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 9c981c4a3644..785700a08e9d 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -84,8 +84,6 @@ int acpi_lapic;
84int acpi_ioapic; 84int acpi_ioapic;
85int acpi_strict; 85int acpi_strict;
86 86
87static int disable_irq0_through_ioapic __initdata;
88
89u8 acpi_sci_flags __initdata; 87u8 acpi_sci_flags __initdata;
90int acpi_sci_override_gsi __initdata; 88int acpi_sci_override_gsi __initdata;
91int acpi_skip_timer_override __initdata; 89int acpi_skip_timer_override __initdata;
@@ -982,10 +980,6 @@ void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi)
982 int pin; 980 int pin;
983 struct mp_config_intsrc mp_irq; 981 struct mp_config_intsrc mp_irq;
984 982
985 /* Skip the 8254 timer interrupt (IRQ 0) if requested. */
986 if (bus_irq == 0 && disable_irq0_through_ioapic)
987 return;
988
989 /* 983 /*
990 * Convert 'gsi' to 'ioapic.pin'. 984 * Convert 'gsi' to 'ioapic.pin'.
991 */ 985 */
@@ -1052,10 +1046,6 @@ void __init mp_config_acpi_legacy_irqs(void)
1052 for (i = 0; i < 16; i++) { 1046 for (i = 0; i < 16; i++) {
1053 int idx; 1047 int idx;
1054 1048
1055 /* Skip the 8254 timer interrupt (IRQ 0) if requested. */
1056 if (i == 0 && disable_irq0_through_ioapic)
1057 continue;
1058
1059 for (idx = 0; idx < mp_irq_entries; idx++) { 1049 for (idx = 0; idx < mp_irq_entries; idx++) {
1060 struct mp_config_intsrc *irq = mp_irqs + idx; 1050 struct mp_config_intsrc *irq = mp_irqs + idx;
1061 1051
@@ -1413,17 +1403,6 @@ static int __init force_acpi_ht(const struct dmi_system_id *d)
1413} 1403}
1414 1404
1415/* 1405/*
1416 * Don't register any I/O APIC entries for the 8254 timer IRQ.
1417 */
1418static int __init
1419dmi_disable_irq0_through_ioapic(const struct dmi_system_id *d)
1420{
1421 pr_notice("%s detected: disabling IRQ 0 through I/O APIC\n", d->ident);
1422 disable_irq0_through_ioapic = 1;
1423 return 0;
1424}
1425
1426/*
1427 * Force ignoring BIOS IRQ0 pin2 override 1406 * Force ignoring BIOS IRQ0 pin2 override
1428 */ 1407 */
1429static int __init dmi_ignore_irq0_timer_override(const struct dmi_system_id *d) 1408static int __init dmi_ignore_irq0_timer_override(const struct dmi_system_id *d)
@@ -1608,32 +1587,6 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
1608 * is enabled. This input is incorrectly designated the 1587 * is enabled. This input is incorrectly designated the
1609 * ISA IRQ 0 via an interrupt source override even though 1588 * ISA IRQ 0 via an interrupt source override even though
1610 * it is wired to the output of the master 8259A and INTIN0 1589 * it is wired to the output of the master 8259A and INTIN0
1611 * is not connected at all. Abandon any attempts to route
1612 * IRQ 0 through the I/O APIC therefore.
1613 */
1614 {
1615 .callback = dmi_disable_irq0_through_ioapic,
1616 .ident = "HP NX6125 laptop",
1617 .matches = {
1618 DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
1619 DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nx6125"),
1620 },
1621 },
1622 {
1623 .callback = dmi_disable_irq0_through_ioapic,
1624 .ident = "HP NX6325 laptop",
1625 .matches = {
1626 DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
1627 DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nx6325"),
1628 },
1629 },
1630 /*
1631 * HP laptops which use a DSDT reporting as HP/SB400/10000,
1632 * which includes some code which overrides all temperature
1633 * trip points to 16C if the INTIN2 input of the I/O APIC
1634 * is enabled. This input is incorrectly designated the
1635 * ISA IRQ 0 via an interrupt source override even though
1636 * it is wired to the output of the master 8259A and INTIN0
1637 * is not connected at all. Force ignoring BIOS IRQ0 pin2 1590 * is not connected at all. Force ignoring BIOS IRQ0 pin2
1638 * override in that cases. 1591 * override in that cases.
1639 */ 1592 */