Subject: kern/19769: dell latidude c840 touchpad problem
To: None <gnats-bugs@gnats.netbsd.org>
From: None <cat@iki.fi>
List: netbsd-bugs
Date: 01/10/2003 17:44:26
>Number: 19769
>Category: kern
>Synopsis: alps glidepoint neads reset after sleep on dell latitude C840
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Jan 10 07:45:02 PST 2003
>Closed-Date:
>Last-Modified:
>Originator: Patrik Andersin
>Release: NetBSD 1.6K
>Organization:
what? me organized?
>Environment:
System: NetBSD cat 1.6K NetBSD 1.6K (CAT3) #12: Fri Jan 3 12:16:29 EET 2003 cat@cat:/usr/obj/sys/arch/i386/compile/CAT3 i386
Architecture: i386
Machine: i386
>Description:
On dell latitude C840 the alps glidepoint neads reseting after sleep.
Otherwise the scratchpad is about 5 times slower than initially after cold boot.
There is some on pms.c that should recheck the protocol and init mouse on PWR_RESUME,
but it doesn't get executed when you suspend and resume from text vc because then
the mouse device is not open. Even if you suspen from X vc, the do_enable() function
isn't sufficient enough to reset the scratcpad.
>How-To-Repeat:
Use zzz command to suspend.
>Fix:
--- /usr/src/sys/dev/pckbc/pms.c.orig Fri Jan 10 15:42:58 2003
+++ /usr/src/sys/dev/pckbc/pms.c Fri Jan 10 15:44:53 2003
@@ -368,6 +368,9 @@
sc->sc_suspended = 0;
do_enable(sc); /* only if we were suspended */
}
+ sc->inputstate = 0;
+ sc->sc_enabled = 0;
+ wakeup(&sc->sc_enabled);
case PWR_SOFTSUSPEND:
case PWR_SOFTSTANDBY:
case PWR_SOFTRESUME:
>Release-Note:
>Audit-Trail:
>Unformatted: