Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 13 Jun 2004 19:43:51 +0900 (JST)
From:      Yoshiaki Uchikawa <yoshiaki@kt.rim.or.jp>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   i386/67901: PS/2 mouse probrem
Message-ID:  <200406131043.i5DAhpEx000697@singer.tertio.atoll>
Resent-Message-ID: <200406131050.i5DAoCCE011076@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         67901
>Category:       i386
>Synopsis:       PS/2 mouse probrem
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-i386
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jun 13 10:50:12 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Yoshiaki Uchikawa
>Release:        FreeBSD 5.2-CURRENT i386
>Organization:
>Environment:
System: FreeBSD singer.tertio.atoll 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Sun Jun 13 17:16:58 JST 2004 root@singer.tertio.atoll:/usr/src/sys/i386/compile/CRUSE i386
>Description:
	After MAY 29 current, 
	I can't use PS/2 mouse (with X). 
	This probrem looks seem to be IRQ confrict.

	I have two machines, Aopen KT-600(VIA 5235 chepset + AMD AthelonXP)
	and GIGABYTE 6VTX(82C686B chipset + Intel Celeron 1.4GHz)
	Both machines have same probrem.

Before May,28 curent
--dmesg--
uhci2: <VIA 83C572 USB controller> port 0xdc00-0xdc1f irq 5 at device 16.2 on p
ci0
uhci2: [GIANT-LOCKED]
usb2: <VIA 83C572 USB controller> on uhci2
 :
pcm0: <VIA VT8235> port 0xe400-0xe4ff irq 5 at device 17.5 on pci0
pcm0: [GIANT-LOCKED]
pcm0: <Avance Logic ALC650 AC97 Codec>
--------

 % vmstat -i

interrupt                          total       rate
irq0: clk                         717191         99
irq1: atkbd0                        3842          0
irq6: fdc0                             5          0
irq8: rtc                         918043        127
irq11: fxp0                         2900          0
irq12: psm0                        15316          2
irq13: npx0                            2          0
irq14: ata0                           42          0
irq15: ata1                        57241          7
Total                            1714582        239

After May, 29 curent
--dmesg--
uhci2: <VIA 83C572 USB controller> port 0xdc00-0xdc1f irq 12 at device 16.2 on pci0
uhci2: [GIANT-LOCKED]
usb2: <VIA 83C572 USB controller> on uhci2
 :
pcm0: <VIA VT8235> port 0xe400-0xe4ff irq 12 at device 17.5 on pci0
pcm0: [GIANT-LOCKED]
pcm0: <Avance Logic ALC650 AC97 Codec>
--------

 % vmstat -i

interrupt                          total       rate
irq0: clk                           4422         96
irq1: atkbd0                         205          4
irq6: fdc0                             5          0
irq7: fxp0                            15          0
irq8: rtc                           5660        123
irq12: pcm0 uhci2+                     1          0
irq13: npx0                            1          0
irq14: ata0                           42          0
irq15: ata1                         1805         39
Total                              12156        264

 description of the problem (multiple lines)>
>How-To-Repeat:
	
>Fix:
--- ../acpi_pci_link.c	Sun Jun 13 19:29:37 2004
+++ acpi_pci_link.c	Sun Jun 13 16:41:19 2004
@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.15 2004/05/28 17:31:32 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.14 2004/04/14 03:34:11 njl Exp $");
 
 #include "opt_acpi.h"
 #include <sys/param.h>
@@ -48,6 +48,7 @@
 	TAILQ_ENTRY(acpi_pci_link_entry) links;
 	ACPI_HANDLE	handle;
 	UINT8		current_irq;
+	UINT8		initial_irq;
 	ACPI_RESOURCE	possible_resources;
 	UINT8		number_of_interrupts;
 	UINT8		interrupts[MAX_POSSIBLE_INTERRUPTS];
@@ -72,9 +73,6 @@
 
 static int	irq_penalty[MAX_ACPI_INTERRUPTS];
 
-static int	acpi_pci_link_is_valid_irq(struct acpi_pci_link_entry *link,
-    UINT8 irq);
-
 #define ACPI_STA_PRESENT	0x00000001
 #define ACPI_STA_ENABLE		0x00000002
 #define ACPI_STA_SHOWINUI	0x00000004
@@ -384,12 +382,7 @@
 		    acpi_name(handle), AcpiFormatException(error)));
 	}
 
-	if (!acpi_pci_link_is_valid_irq(link, link->current_irq)) {
-		ACPI_DEBUG_PRINT((ACPI_DB_WARN,
-		    "initial IRQ %u is invalid for link %s\n",
-		    link->current_irq, acpi_name(handle)));
-		link->current_irq = 0;
-	}
+	link->initial_irq = link->current_irq;
 
 	error = AcpiGetPossibleResources(handle, &buf);
 	if (ACPI_FAILURE(error)) {
@@ -532,6 +525,11 @@
 		if (link->interrupts[i] == irq)
 			return (1);
 	}
+
+	/* allow initial IRQ as valid one. */
+	if (link->initial_irq == irq)
+		return (1);
+
 	return (0);
 }
 


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200406131043.i5DAhpEx000697>