x86: remove conflicting nx6325 and nx6125 quirks
authorRafael J. Wysocki <rjw@sisk.pl>
Sat, 12 Jul 2008 00:50:15 +0000 (02:50 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 12 Jul 2008 04:44:58 +0000 (06:44 +0200)
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>
arch/x86/kernel/acpi/boot.c

index 9c981c4a36445c1820240a292317d86a7400ecbf..785700a08e9dddef7204ee6867e3fd65cdd4485a 100644 (file)
@@ -84,8 +84,6 @@ int acpi_lapic;
 int acpi_ioapic;
 int acpi_strict;
 
-static int disable_irq0_through_ioapic __initdata;
-
 u8 acpi_sci_flags __initdata;
 int acpi_sci_override_gsi __initdata;
 int acpi_skip_timer_override __initdata;
@@ -982,10 +980,6 @@ void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi)
        int pin;
        struct mp_config_intsrc mp_irq;
 
-       /* Skip the 8254 timer interrupt (IRQ 0) if requested.  */
-       if (bus_irq == 0 && disable_irq0_through_ioapic)
-               return;
-
        /*
         * Convert 'gsi' to 'ioapic.pin'.
         */
@@ -1052,10 +1046,6 @@ void __init mp_config_acpi_legacy_irqs(void)
        for (i = 0; i < 16; i++) {
                int idx;
 
-               /* Skip the 8254 timer interrupt (IRQ 0) if requested.  */
-               if (i == 0 && disable_irq0_through_ioapic)
-                       continue;
-
                for (idx = 0; idx < mp_irq_entries; idx++) {
                        struct mp_config_intsrc *irq = mp_irqs + idx;
 
@@ -1412,17 +1402,6 @@ static int __init force_acpi_ht(const struct dmi_system_id *d)
        return 0;
 }
 
-/*
- * Don't register any I/O APIC entries for the 8254 timer IRQ.
- */
-static int __init
-dmi_disable_irq0_through_ioapic(const struct dmi_system_id *d)
-{
-       pr_notice("%s detected: disabling IRQ 0 through I/O APIC\n", d->ident);
-       disable_irq0_through_ioapic = 1;
-       return 0;
-}
-
 /*
  * Force ignoring BIOS IRQ0 pin2 override
  */
@@ -1601,32 +1580,6 @@ static struct dmi_system_id __initdata acpi_dmi_table[] = {
                     DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 360"),
                     },
         },
-       /*
-        * HP laptops which use a DSDT reporting as HP/SB400/10000,
-        * which includes some code which overrides all temperature
-        * trip points to 16C if the INTIN2 input of the I/O APIC
-        * is enabled.  This input is incorrectly designated the
-        * ISA IRQ 0 via an interrupt source override even though
-        * it is wired to the output of the master 8259A and INTIN0
-        * is not connected at all.  Abandon any attempts to route
-        * IRQ 0 through the I/O APIC therefore.
-        */
-       {
-        .callback = dmi_disable_irq0_through_ioapic,
-        .ident = "HP NX6125 laptop",
-        .matches = {
-                    DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
-                    DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nx6125"),
-                    },
-        },
-       {
-        .callback = dmi_disable_irq0_through_ioapic,
-        .ident = "HP NX6325 laptop",
-        .matches = {
-                    DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
-                    DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nx6325"),
-                    },
-        },
        /*
         * HP laptops which use a DSDT reporting as HP/SB400/10000,
         * which includes some code which overrides all temperature