Messages in this thread Patch in this message | | | From | Thomas Schlichter <> | Subject | Re: [BUG?] 2.6.0-test3 USB mouse problems | Date | Sat, 9 Aug 2003 18:02:58 +0200 |
| |
On Saturday 09 August 2003 17:08, Joonas Koivunen wrote: > Seems that all this was caused because of ACPI. With boot-time acpi=off, > mouse works.
I've got the same mainboard and the same problems...
It's not a problem with ACPI, it's more a problem with the interrupt routing based on the ACPI tables. These tables seem to be not correctly implemented in the BIOS and, as the german EPOX support admits, are not really tested. To change this you may contact the EPOX support and describe your problems, too....
If you want to use ACPI while this BIOS bug is not fixed you may use the attached patch and boot with pci=noacpi. Without the patch this doesn't work for me here...
Best regards Thomas Schlichter --- linux-2.6.0-test2-mm4/arch/i386/kernel/acpi/boot.c.orig Fri Aug 8 16:26:27 2003 +++ linux-2.6.0-test2-mm4/arch/i386/kernel/acpi/boot.c Fri Aug 8 17:00:07 2003 @@ -39,6 +39,7 @@ #define PREFIX "ACPI: " extern int acpi_disabled; +extern int acpi_irq_disabled; /* -------------------------------------------------------------------------- Boot-time Configuration @@ -381,6 +382,8 @@ #ifdef CONFIG_X86_IO_APIC #ifndef CONFIG_ACPI_HT_ONLY + if (!acpi_irq_disabled) { + /* * I/O APIC * -------- @@ -416,6 +419,8 @@ acpi_irq_model = ACPI_IRQ_MODEL_IOAPIC; acpi_ioapic = 1; + + } #endif /*!CONFIG_ACPI_HT_ONLY*/ #endif /*CONFIG_X86_IO_APIC*/ --- linux-2.6.0-test2-mm4/arch/i386/kernel/setup.c.orig Fri Aug 8 16:29:55 2003 +++ linux-2.6.0-test2-mm4/arch/i386/kernel/setup.c Fri Aug 8 17:00:37 2003 @@ -69,6 +69,8 @@ #endif EXPORT_SYMBOL(acpi_disabled); +int acpi_irq_disabled = 0; + int MCA_bus; /* for MCA, but anyone else can use it if they want */ unsigned int machine_id; @@ -524,6 +526,10 @@ if (c == ' ' && !memcmp(from, "acpismp=force", 13)) acpi_disabled = 0; + /* "pci=noacpi" disables ACPI table parsing for interrupt routing */ + if (c == ' ' && !memcmp(from, "pci=noacpi", 10)) + acpi_irq_disabled = 1; + /* * highmem=size forces highmem to be exactly 'size' bytes. * This works even on boxes that have no highmem otherwise. | |