From owner-freebsd-mobile@FreeBSD.ORG Fri Dec 24 18:54:48 2004 Return-Path: Delivered-To: freebsd-mobile@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7DEEE16A4CE for ; Fri, 24 Dec 2004 18:54:48 +0000 (GMT) Received: from doppel.oneway.com (doppel.oneway.com [216.22.46.103]) by mx1.FreeBSD.org (Postfix) with ESMTP id E335B43D46 for ; Fri, 24 Dec 2004 18:54:47 +0000 (GMT) (envelope-from jay@oneway.com) Received: from doppel.oneway.com (localhost [127.0.0.1]) by doppel.oneway.com (8.12.9/8.12.9) with ESMTP id iBOIsJb3084591 for ; Fri, 24 Dec 2004 13:54:19 -0500 (EST) (envelope-from jay@oneway.com) Received: (from smmsp@localhost) by doppel.oneway.com (8.12.9/8.12.9/Submit) id iBOIsJqB084590 for freebsd-mobile@freebsd.org; Fri, 24 Dec 2004 13:54:19 -0500 (EST) X-Authentication-Warning: doppel.oneway.com: smmsp set sender to jay@oneway.com using -f Received: from [209.205.171.68] by doppel.oneway.com ESMTP localSMTP (1.42m) for oneway MIME-Version: 1.0 (Apple Message framework v619) Content-Transfer-Encoding: 7bit Message-Id: <45367EC4-55DD-11D9-8041-00039398BAE0@oneway.com> Content-Type: text/plain; charset=US-ASCII; format=flowed To: freebsd-mobile@freebsd.org From: Jason Kuri Date: Fri, 24 Dec 2004 12:54:42 -0600 X-Mailer: Apple Mail (2.619) X-Mesmtpd-Mailerfrom: Jason Kuri Subject: kernel patch for Synaptics Touchpads X-BeenThere: freebsd-mobile@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Mobile computing with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Dec 2004 18:54:48 -0000 Hello everyone, I've spent the last few days tweaking psm.c to better support the synaptics touchpad in my Acer laptop. I now have it to a point that I'm happy with it, and since I've seen a fair amount of interest in the synaptics touchpad on this list - I figured I'd share the patch with anyone who wants it. This patch adds extended button support ( on mine the scroll-button is now fully supported both horizontal and vertical). It also adds sysctl's to control tapping thresholds (allows you to turn tapping off / make it harder to 'accidentally' tap). Finally - it helps with the 'sticking' problem with the current driver - Low speed movements work better. The patch is against 1.79.2.2 psm.c (what is in 5.3-RELEASE) and is available here: http://oneway.com/hx/psm-synaptics.diff I tried to set reasonable defaults, below are the tunable parameters: hw.psm.psm_tap_threshold - Touchpad tap threshold - the higher this number - the harder it is to tap. 120+ effectively turns off tapping. hw.psm.psm_tap_timeout - Touchpad timeout - how long we have to wait between mouse movement and a tap before a tap is registered as a click. hw.psm.synaptics_directional_scrolls - if non-zero, the directional pad scrolls, otherwise all buttons register as a middle-click. hw.psm.synaptics_low_speed_threshold - the number of touchpad units below-which we go into low-speed tracking mode. hw.psm.synaptics_min_movement - the number of touchpad units below which we ignore altogether. hw.psm.synaptics_squelch_level - level at which we squelch movement packets. This effectively sends 1 out of every synaptics_squelch_level packets when running in low-speed mode. sysctl hw.psm will show the defaults, which seem just about right on my laptop. Jay