On Sun, Dec 19, 2010 at 9:46 PM,  <[email protected]> wrote:
> From: Chris Bagwell <[email protected]>
>
> This patch adds support for processing multi-touch (MT) kernel events.
> To do this, it must filter out older style single touch (ST) events
> to prevent conflicts.
>
> For Bamboo's/Tablet PC, channel 0 == 1st finger and channel 1 == 2nd finger.
>
> In older Bamboo kernel driver, serial #1 == 1st finger and serial #2 ==
> 2nd finger.  Mapping to channel was serial # - 1 and events had to
> come in isolated by separate BTN_TOOL_DOUBLETAP/TRIPLETAP messages.
>
> With newer MT kernel driver, MT slot 0 == 1st finger and MT slot 1 ==
> 2nd finger.  Take advantage of this straight mapping to channel.
> Code will ignore ST-style events then MT packets will write to
> either channel 0 or 1 or both.
>
> Signed-off-by: Chris Bagwell <[email protected]>

Here is list of outstanding items I know about getting latest MT
version of Bamboo driver working (2.6.37 driver that is).

* There is a FIXME in this patch.  Feel free to delete that small
section and commit this.  It just makes it easy for me to compile (I
do not need command line options on configure this way).  In
generally, we will have lots of reports from users whose distributions
ship 2.6.35 or earlier that they can not get 2-finger gestures working
because of this reason.

* Resolution of touches is scaled up in new kernel driver but we've
not accounted for it in xf86-input-wacom.  Even without accounting for
it, 2-finger scrolling works for me and thats really about only
gesture I use.  Maybe this is not an issue but something to keep eye
on.

* New MT kernel driver does not send X/Y/PRESSURE=0 when going out of
proximity for touch (leaves at last good value).  xf86-input-wcom
forces to zero for *first* channel/finger only.  This mismatch in
behavior leads to xf86-input-wacom incorrectly assuming zero for X/Y
during simple things like double tap gesture of 1 finger which results
in cursor jumps.  Since users do not typically touch in same X/Y
location twice, its limited times they see cursor jumps.

This last one should really be fixed but its really outside scope of
MT for Bamboo.  Its becoming more and more an issue for all wacom
devices that we are memset()'ing when going out of proximity since the
kernel driver is not doing same (wacom_w8001 for example).

I can develop the patch for xf86-input-wacom to not memset() but I'll
really need some help from protocol 5 device people because they are
really only reason we are doing the memset() that I can see... and I
can not test.

Chris

------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to