linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [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;
as well as URLs for NNTP newsgroup(s).