lkml.org 
[lkml]   [2012]   [Apr]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Multitouch regression in 3.3 on thinkpad X220 clickpad
    On Fri, Apr 20, 2012 at 08:27:37AM -0600, Daniel Drake wrote:
    > On Fri, Apr 20, 2012 at 1:21 AM, Benjamin Herrenschmidt
    > <benh@kernel.crashing.org> wrote:
    > > So Peter and I have been discussing a problem I observed on my brand new
    > > ThinkPad X220 and it's multitouch "clickpad". I've been digging a bit
    > > more today and bisected the regression to:
    > >
    > > commit 7968a5dd492ccc38345013e534ad4c8d6eb60ed1
    > > Input: synaptics - add support for Relative mode
    > >
    > > Without that commit, I can draw two "traces" when using two fingers in
    > > mtview (after removing the device from X), each follow one finger.
    > >
    > > With that commit applied, this doesn't work anymore: it appears to be
    > > unable to track more than one finger. IE. If i put a finger on the
    > > touchpad, I can draw, but a second finger is then ignored (or causes one
    > > or two spots in a random place to appear but that's about it).
    > >
    > > Now other multitouch operations such as two finger scrolling seem to
    > > work in X. I'm not familiar with the inner workings of the input layer
    > > or the synaptic touchpads. I'll dig a bit more this week-end if I have
    > > time, but it would save me plenty of that precious time if you guys
    > > could hint me at things to look at :-)
    >
    > Sorry to cause you this trouble.
    > It's the first I've heard of issues with this patch, and unfortunately
    > I don't have any immediate diagnosis for you.
    > The patch isn't supposed to change behaviour of the existing default
    > mode which is called "absolute mode".
    >
    > What I would suggest looking at is
    > synaptics_set_advanced_gesture_mode(). Is this being called, does it
    > run to completion?

    It looks we lost a condition in synaptics_set_advanced_gesture_mode().
    It used to be:


    if (!(SYN_CAP_ADV_GESTURE(priv->ext_cap_0c) ||
    SYN_CAP_IMAGE_SENSOR(priv->ext_cap_0c)))
    return 0;

    and now simply is:

    if (!SYN_CAP_ADV_GESTURE(priv->ext_cap_0c))
    return 0;

    Could you try restoring the condition and see if it fixes the
    regression?

    Thanks.

    --
    Dmitry


    \
     
     \ /
      Last update: 2012-04-20 19:05    [W:0.029 / U:0.272 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site