From dbx@atmos.washington.edu  Fri Sep 18 16:52:51 1998
Received: from hello.atmos.washington.edu (hello.atmos.washington.edu [128.95.176.64])
          by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id QAA04605
          for <FreeBSD-gnats-submit@freebsd.org>; Fri, 18 Sep 1998 16:52:44 -0700 (PDT)
          (envelope-from dbx@atmos.washington.edu)
Received: from localhost (dbx@localhost)
	by hello.atmos.washington.edu (8.8.7/8.8.8) with SMTP id QAA00398;
	Fri, 18 Sep 1998 16:52:19 -0700 (PDT)
Message-Id: <Pine.FSD.3.96.980918165120.392A-100000@hello.atmos.washington.edu>
Date: Fri, 18 Sep 1998 16:52:18 -0700 (PDT)
From: Doug Burks <dbx@atmos.washington.edu>
To: FreeBSD-gnats-submit@freebsd.org
Cc: dbx@atmos.washington.edu
Subject: Tapping the touchpad does not work

>Number:         7983
>Category:       kern
>Synopsis:       Tapping the touchpad does not work
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    yokota
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Sep 18 17:00:00 PDT 1998
>Closed-Date:    Thu Mar 11 06:45:44 PST 1999
>Last-Modified:  Thu Mar 11 06:48:24 PST 1999
>Originator:     Doug Burks
>Release:        FreeBSD 2.2.7-RELEASE i386
>Organization:
Dept of Atmospheric Sciences, University of Washington
>Environment:

NEC Versa 5060X laptop running X11 (either Accelerated X v4.1 and stock
XFree86-3.3.2p2).  The kernel is custom, but nothing more than stripping
out unneeded stuff from GENERIC and adding the laptop specific items.
The mouse is on "psm0".

>Description:

One nice feature of a touchpad is that a simple tap of the pad translates
to a left mouse click.  This worked under FreeBSD 2.2.5, but no longer
works under FreeBSD 2.2.7.  Also the tap works for a touchpad connected
to a serial port under 2.2.7, unlike this PS/2 bus mouse port.

>How-To-Repeat:

Simply try it.  I have no idea what range of touchpads fail.

>Fix:
	
Looking through /usr/src/sys/i386/isa/psm.c, the problem is that this
mouse is recognized as a generic PS/2 mouse, and thus is not recognized
as a touchpad which supports tapping.  Thus the returned tap code is
not recognized, not handled, and not returned.  The following (unfortu-
nately reverse) patch fixes the problem on my laptop.

*** /usr/src/sys/i386/isa/psm.c	Thu Sep 17 10:43:03 1998
--- /usr/src/sys/i386/isa/psm.c--	Thu Sep 17 10:42:48 1998
***************
*** 1770,1779 ****
  	    break;
  
  	case MOUSE_MODEL_GENERIC:
- 	    /* `tapping' action */
- 	    ms.button |= ((c & MOUSE_PS2_TAP)) ? 0 : MOUSE_BUTTON4DOWN;
- 	    break;
- 
  	default:
  	    break;
  	}
--- 1770,1775 ----

Unfortunately, this looks more like a workaround than a true fix, and I
have no idea how it will affect non-touchpad PS/2 mice.  A true fix re-
quires recognizing the full range of touchpads available, beyond my cur-
rent knowledge, even for the one on my laptop!  I hope that this will
spur the maintainer to handle this admittedly minor problem (though ma-
jor inconvenience.  I felt lost without tapping!) more correctly.

Doug Burks
dbx@atmos.washington.edu

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->yokota 
Responsible-Changed-By: yokota 
Responsible-Changed-When: Tue Sep 22 07:23:59 PDT 1998 
Responsible-Changed-Why:  
psm0 is my area. 
State-Changed-From-To: open->closed 
State-Changed-By: yokota 
State-Changed-When: Thu Mar 11 06:45:44 PST 1999 
State-Changed-Why:  
A fix was developed, in cooperation with the PR originator, and committed 
to 3.0-CURRENT branch at the time.   

>Unformatted:
