* [BUG?] 2.6.0-test3 USB mouse problems @ 2003-08-09 12:06 Joonas Koivunen 2003-08-09 15:08 ` Joonas Koivunen 0 siblings, 1 reply; 5+ messages in thread From: Joonas Koivunen @ 2003-08-09 12:06 UTC (permalink / raw) To: linux-kernel [-- Attachment #1: Type: text/plain, Size: 1108 bytes --] Hey again, First: my hardware, motherboard is VIA KT-400 based Epox 8K9A series. My mouse (the one not working under 2.6.0-*) is (according to 2.4.21-pre6) Logitech USB-PS/2 Mouse. This mouse works under linux 2.4-series and Windows XP flawlessly. But under 2.6.0-series it doesnt work. More: Aug 9 14:27:00 localhost kernel: drivers/usb/core/usb.c: registered new driver hid Aug 9 14:27:00 localhost kernel: drivers/usb/input/hid-core.c: v2.0:USB HID core driver Aug 9 14:27:00 localhost kernel: mice: PS/2 mouse device common for all mice Aug 9 14:27:00 localhost kernel: hub 2-0:0: new USB device on port 1, assigned address 2 Aug 9 14:27:00 localhost kernel: drivers/usb/host/uhci-hcd.c: d000: suspend_hc Aug 9 14:27:00 localhost kernel: drivers/usb/host/uhci-hcd.c: d400: suspend_hc Aug 9 14:27:02 localhost kernel: drivers/usb/core/message.c: usb_control/bulk_msg: timeout So it seems that it timeouts. I don't have a clue about USB kernel code, so I really don't know where to go from here. I'm attaching the whole kernel log where you can see all the verbose USB messages. -rzei [-- Attachment #2: kern.log.gz --] [-- Type: application/x-gzip, Size: 5316 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG?] 2.6.0-test3 USB mouse problems 2003-08-09 12:06 [BUG?] 2.6.0-test3 USB mouse problems Joonas Koivunen @ 2003-08-09 15:08 ` Joonas Koivunen 2003-08-09 16:02 ` Thomas Schlichter 0 siblings, 1 reply; 5+ messages in thread From: Joonas Koivunen @ 2003-08-09 15:08 UTC (permalink / raw) To: linux-kernel Seems that all this was caused because of ACPI. With boot-time acpi=off, mouse works. -rzei ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG?] 2.6.0-test3 USB mouse problems 2003-08-09 15:08 ` Joonas Koivunen @ 2003-08-09 16:02 ` Thomas Schlichter 2003-08-09 23:24 ` Joonas Koivunen 0 siblings, 1 reply; 5+ messages in thread From: Thomas Schlichter @ 2003-08-09 16:02 UTC (permalink / raw) To: rzei; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 720 bytes --] 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 [-- Attachment #2: fix_noacpi.diff --] [-- Type: text/x-diff, Size: 1431 bytes --] --- 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. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [BUG?] 2.6.0-test3 USB mouse problems 2003-08-09 16:02 ` Thomas Schlichter @ 2003-08-09 23:24 ` Joonas Koivunen 2003-08-10 16:42 ` [PATCH][2.6] fix problems with pci=noacpi Thomas Schlichter 0 siblings, 1 reply; 5+ messages in thread From: Joonas Koivunen @ 2003-08-09 23:24 UTC (permalink / raw) To: Thomas Schlichter; +Cc: linux-kernel On Saturday 09 August 2003 19:02, Thomas Schlichter wrote: > 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.... Thanks for letting me know.. I had a image of EPOX being pretty good with motherboards.. Guess not then. > 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... Why isn't this patch in the mainstream kernel? There are many other chipset/bios fixes in the kernel.. This would save many reboot/recompilings/worries until or if ever epox does something with the bios. The patch works nicely. Though I did apply it manually to -test3 :) But it works. > Best regards > Thomas Schlichter Thanks again -rzei ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH][2.6] fix problems with pci=noacpi 2003-08-09 23:24 ` Joonas Koivunen @ 2003-08-10 16:42 ` Thomas Schlichter 0 siblings, 0 replies; 5+ messages in thread From: Thomas Schlichter @ 2003-08-10 16:42 UTC (permalink / raw) To: rzei, Andrew Morton; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 1171 bytes --] On Sunday 10 August 2003 01:24, Joonas Koivunen wrote: > On Saturday 09 August 2003 19:02, Thomas Schlichter wrote: ~~ snip ~~ > > 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... > > Why isn't this patch in the mainstream kernel? There are many other > chipset/bios fixes in the kernel.. This would save many > reboot/recompilings/worries until or if ever epox does something with the > bios. Well, I didn't push it to Andrew or Linus yet, because it changes parts of the semantics of 'pci=noacpi'. But currently I do think the changed way is more correct, so perhaps Andrew may give it a try in the next -mm ?? If so, people who had problems with 'pci=noacpi' and use 'acpi=off' instead should give it a try again... > The patch works nicely. Though I did apply it manually to -test3 :) But it > works. I attached the patch again, now it also changes the indentation correctly and simplifies the final setting of smp_found_config and the call of clustered_apic_check(). It applies to 2.6.0-test3-mm1. Best regards Thomas Schlichter [-- Attachment #2: fix_noacpi.diff --] [-- Type: text/x-diff, Size: 3361 bytes --] --- linux-2.6.0-test3-mm1/arch/i386/kernel/acpi/boot.c.orig Sun Aug 10 14:16:32 2003 +++ linux-2.6.0-test3-mm1/arch/i386/kernel/acpi/boot.c Sun Aug 10 17:11:13 2003 @@ -39,6 +39,7 @@ #define PREFIX "ACPI: " extern int acpi_disabled; +extern int acpi_ioapic_disabled; /* -------------------------------------------------------------------------- Boot-time Configuration @@ -386,46 +387,51 @@ * -------- */ + if (!acpi_ioapic_disabled) { + + result = acpi_table_parse_madt(ACPI_MADT_IOAPIC, + acpi_parse_ioapic); + if (!result) { + printk(KERN_ERR PREFIX "No IOAPIC entries present\n"); + return -ENODEV; + } + else if (result < 0) { + printk(KERN_ERR PREFIX "Error parsing IOAPIC entry\n"); + return result; + } - result = acpi_table_parse_madt(ACPI_MADT_IOAPIC, acpi_parse_ioapic); - if (!result) { - printk(KERN_ERR PREFIX "No IOAPIC entries present\n"); - return -ENODEV; - } - else if (result < 0) { - printk(KERN_ERR PREFIX "Error parsing IOAPIC entry\n"); - return result; - } + /* Build a default routing table for legacy (ISA) interrupts. */ + mp_config_acpi_legacy_irqs(); - /* Build a default routing table for legacy (ISA) interrupts. */ - mp_config_acpi_legacy_irqs(); + result = acpi_table_parse_madt(ACPI_MADT_INT_SRC_OVR, + acpi_parse_int_src_ovr); + if (result < 0) { + printk(KERN_ERR PREFIX + "Error parsing interrupt source overrides entry\n"); + /* TBD: Cleanup to allow fallback to MPS */ + return result; + } - result = acpi_table_parse_madt(ACPI_MADT_INT_SRC_OVR, acpi_parse_int_src_ovr); - if (result < 0) { - printk(KERN_ERR PREFIX "Error parsing interrupt source overrides entry\n"); - /* TBD: Cleanup to allow fallback to MPS */ - return result; - } + result = acpi_table_parse_madt(ACPI_MADT_NMI_SRC, + acpi_parse_nmi_src); + if (result < 0) { + printk(KERN_ERR PREFIX "Error parsing NMI SRC entry\n"); + /* TBD: Cleanup to allow fallback to MPS */ + return result; + } - result = acpi_table_parse_madt(ACPI_MADT_NMI_SRC, acpi_parse_nmi_src); - if (result < 0) { - printk(KERN_ERR PREFIX "Error parsing NMI SRC entry\n"); - /* TBD: Cleanup to allow fallback to MPS */ - return result; - } + acpi_irq_model = ACPI_IRQ_MODEL_IOAPIC; + acpi_ioapic = 1; - acpi_irq_model = ACPI_IRQ_MODEL_IOAPIC; - - acpi_ioapic = 1; - -#endif /*!CONFIG_ACPI_HT_ONLY*/ -#endif /*CONFIG_X86_IO_APIC*/ #ifdef CONFIG_X86_LOCAL_APIC - if (acpi_lapic && acpi_ioapic) { smp_found_config = 1; clustered_apic_check(); - } #endif + + } + +#endif /*!CONFIG_ACPI_HT_ONLY*/ +#endif /*CONFIG_X86_IO_APIC*/ return 0; } --- linux-2.6.0-test3-mm1/arch/i386/kernel/setup.c.orig Sun Aug 10 14:17:08 2003 +++ linux-2.6.0-test3-mm1/arch/i386/kernel/setup.c Sun Aug 10 17:00:04 2003 @@ -69,6 +69,8 @@ #endif EXPORT_SYMBOL(acpi_disabled); +int acpi_ioapic_disabled = 0; + int MCA_bus; /* for MCA, but anyone else can use it if they want */ unsigned int machine_id; @@ -523,6 +525,10 @@ /* "acpismp=force" turns on ACPI again */ 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_ioapic_disabled = 1; /* * highmem=size forces highmem to be exactly 'size' bytes. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2003-08-10 16:42 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2003-08-09 12:06 [BUG?] 2.6.0-test3 USB mouse problems Joonas Koivunen 2003-08-09 15:08 ` Joonas Koivunen 2003-08-09 16:02 ` Thomas Schlichter 2003-08-09 23:24 ` Joonas Koivunen 2003-08-10 16:42 ` [PATCH][2.6] fix problems with pci=noacpi Thomas Schlichter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®