From nobody@FreeBSD.ORG Tue Aug 17 18:55:34 1999
Return-Path: <nobody@FreeBSD.ORG>
Received: by hub.freebsd.org (Postfix, from userid 32767)
	id 6879A15627; Tue, 17 Aug 1999 18:55:34 -0700 (PDT)
Message-Id: <19990818015534.6879A15627@hub.freebsd.org>
Date: Tue, 17 Aug 1999 18:55:34 -0700 (PDT)
From: jrozes@vinton.com
Sender: nobody@FreeBSD.ORG
To: freebsd-gnats-submit@freebsd.org
Subject: ALPS GlidePoint in Sony Z505 not recognized
X-Send-Pr-Version: www-1.0

>Number:         13215
>Category:       kern
>Synopsis:       ALPS GlidePoint in Sony Z505 not recognized
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 17 19:00:01 PDT 1999
>Closed-Date:    Thu Jan 27 07:21:54 PST 2000
>Last-Modified:  Thu Jan 27 07:24:22 PST 2000
>Originator:     Jonathan Rozes
>Release:        3.2-STABLE
>Organization:
>Environment:
FreeBSD thorium 3.2-STABLE FreeBSD 3.2-STABLE #21: Tue Aug 17 17:11:30 PDT 1999
    jrozes@thorium:/usr/src/sys/compile/THORIUM  i386

>Description:
The ALPS GlidePoint device found in the Sony Z505 is not correctly
detected during bootup. It is instead detected as a generic ps/2
mouse, which does not support the 'tap' feature the GlidePoint is
capable of. This is due to the device returning a different value
than expected in the first status byte, as checked in enable_aglide()
in sys/i386/isa/psm.c.
>How-To-Repeat:
Boot any 3.2-STABLE kernel with a psm device configured on a Sony
Z505-series laptop. Mouse will be detected as ps/2 generic.
>Fix:
Don't know if this is really the right way to do it, but here's a
diff that checks for the old status value as well as the one returned
by the GlidePoint in the Sony Z505.

--- sys/i386/isa/psm.c.orig     Tue Aug 17 15:32:39 1999
+++ sys/i386/isa/psm.c  Tue Aug 17 17:16:15 1999
@@ -2027,7 +2027,9 @@
      */
     if (!mouse_id_proc1(sc->kbdc, PSMD_RES_LOW, 2, status))
         return FALSE;
-    if ((status[0] & 0x10) || (status[1] == PSMD_RES_LOW)) 
+    if (status[1] == PSMD_RES_LOW)
+        return FALSE;
+    if ((status[0] & 0x10) && (status[0] & 0x2C))
         return FALSE;
     return TRUE;
 }


>Release-Note:
>Audit-Trail:

From: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
To: jrozes@vinton.com
Cc: freebsd-gnats-submit@freebsd.org,
	yokota@zodiac.mech.utsunomiya-u.ac.jp
Subject: Re: kern/13215: ALPS GlidePoint in Sony Z505 not recognized
Date: Wed, 18 Aug 1999 16:35:53 +0900

 Thank you for submitting the patch.
 
 Would you boot the patched kernel, giving the `boot -v' command at
 the loader prompt and send me /var/run/dmesg.boot, so that I can see
 how the GlidePoint in Sony VAIO Z505 is behaving?
 
 Kazu
 yokota@FreeBSD.org
 

From: Roger Savard <Roger.Savard@henoc.com>
To: freebsd-gnats-submit@FreeBSD.org, jrozes@vinton.com
Cc:  
Subject: Re: kern/13215: ALPS GlidePoint in Sony Z505 not recognized
Date: Fri, 14 Jan 2000 18:01:50 -0500

 Hi,
 
 I tried both patches on a Super-Slim Sony PCG-Z505R,
 the GlidePoint is recognized correctly but, the builtin touch pad
 does not respond correctly: A tap on the touchpad is interpreted
 as 2 X (button 1 press event, button 1 release event) == TWICE. 
 
 It makes use of the touchpad annoying.
 
 Running FreeBSD3.4-Stable (Jan 14 2000).
 
 -- 
 Roger.Savard@henoc.com
 

From: Roger Savard <Roger.Savard@henoc.com>
To: freebsd-gnats-submit@FreeBSD.org, jrozes@vinton.com
Cc: "yokota@zodiac.mech.utsunomiya-u.ac.jp" <yokota@zodiac.mech.utsunomiya-u.ac.jp>
Subject: Re: kern/13215: ALPS GlidePoint in Sony Z505 not recognized
Date: Fri, 14 Jan 2000 19:23:05 -0500

 A workaround is with the use the variable 
 Emulate3Timeout and set the timeout higher.
 
 Section "Pointer"
    Protocol        "GlidePoint"
    Device          "/dev/psm0"
    BaudRate        1200
    Emulate3Timeout 210 <<<
    Resolution      100
    Buttons         3
    Emulate3Buttons
 EndSection
 
 OS: FreeBSD 3.4-Stable 
 WM: WindowMaker windowmaker-0.61.1
 XF86: V336
 --
 
State-Changed-From-To: open->closed 
State-Changed-By: yokota 
State-Changed-When: Thu Jan 27 07:21:54 PST 2000 
State-Changed-Why:  
Both -CURRENT and -STABLE have been update.  A workaround for the 
"double tap" problem was found. 
>Unformatted:
