Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S262872AbTFKSNZ (ORCPT ); Wed, 11 Jun 2003 14:13:25 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S263369AbTFKSNZ (ORCPT ); Wed, 11 Jun 2003 14:13:25 -0400 Received: from twilight.ucw.cz ([81.30.235.3]:33711 "EHLO twilight.ucw.cz") by vger.kernel.org with ESMTP id S262872AbTFKSNX (ORCPT ); Wed, 11 Jun 2003 14:13:23 -0400 Date: Wed, 11 Jun 2003 20:26:56 +0200 From: Vojtech Pavlik To: Peter Osterlund Cc: Kernel Mailing List , Vojtech Pavlik , Joseph Fannin Subject: Re: [PATCH] Synaptics TouchPad driver for 2.5.70 Message-ID: <20030611202656.A6871@ucw.cz> References: <20030611170246.A4187@ucw.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from petero2@telia.com on Wed, Jun 11, 2003 at 08:16:13PM +0200 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2434 Lines: 77 On Wed, Jun 11, 2003 at 08:16:13PM +0200, Peter Osterlund wrote: > Actually, the runtime configuration may not be needed at all if we do > the ABS -> REL conversion in user space, because all parameters > control different aspects of this conversion. That'd be very nice. > > > The patch is available here: > > > > > > http://w1.894.telia.com/~u89404340/patches/synaptics_driver.patch > > > > > > Comments? > > > > IMO it should use ABS_ events and the relativization should be done in > > the XFree86 driver. Other than that, it looks quite OK. > > OK, the hardware state consists of 4 "axes" and 4 buttons, as defined > in the synaptics_hw_state struct: > > struct synaptics_hw_state { > int x; > int y; > int z; > int w; > int left; > int right; > int up; > int down; > }; > > x and y are the finger position, z is the finger pressure and w > contains information about multifinger taps and finger width (for palm > detection.) Left, right, up and down contain the state of the > corresponding physical buttons. > > Is this mapping reasonable? > > x -> ABS_X > y -> ABS_Y > z -> ABS_PRESSURE > w -> ABS_MISC > left -> BTN_LEFT > right -> BTN_RIGHT > up -> BTN_FORWARD > down -> BTN_BACK Yes, this is fine. > The w value is somewhat special and not really a real axis. According > to the Synaptics TouchPad Interfacing Guide > (http://www.synaptics.com/decaf/utilities/ACF126.pdf), W is defined as > follows: > > Value Needed capability Interpretation > W = 0 capMultiFinger Two fingers on the pad. > W = 1 capMultiFinger Three or more fingers on the pad. > W = 2 capPen Pen (instead of finger) on the pad. > W = 3 Reserved. > W = 4-7 capPalmDetect Finger of normal width. > W = 8-14 capPalmDetect Very wide finger or palm. > W = 15 capPalmDetect Maximum reportable width; extremely > wide contact. > > Is there a better way than using ABS_MISC to pass the W information to > user space? I think ABS_MISC is perfectly okay for this. -- Vojtech Pavlik SuSE Labs, SuSE CR - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/