linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Tissoires <benjamin.tissoires@gmail.com>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	linux-input <linux-input@vger.kernel.org>,
	Benjamin Tissoires <benjamin.tissoires@redhat.com>
Subject: Re: [PATCH 1/4] alps: v7: Document the v7 touchpad packet protocol
Date: Fri, 5 Dec 2014 16:58:00 -0500	[thread overview]
Message-ID: <CAN+gG=FMY8Mna0vAx16_6qiK9jXOhGGPaCLrAvM4z1-CUOFzUQ@mail.gmail.com> (raw)
In-Reply-To: <1417613268-13674-1-git-send-email-hdegoede@redhat.com>

On Wed, Dec 3, 2014 at 8:27 AM, Hans de Goede <hdegoede@redhat.com> wrote:
> Add a table documenting where all the bits are in the v7 touchpad packets.
>
> Cc: stable@vger.kernel.org # 3.17
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---

Hi Hans,

I tested yesterday the series on a Toshiba W50-A and a Z30-A if my
memory is accurate. Internal QA tested these on a Dell M4700 (don't
know if it has a v7 touchpad though).
Both tests were conclusive, i.e. they fixes the spurious release when
right-clicking.

Tested-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>

I am not confident enough with the code to review 3/4 and 4/4, but
they look sane to me.

Cheers,
Benjamin

>  drivers/input/mouse/alps.c | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
> index d125a01..aceaade 100644
> --- a/drivers/input/mouse/alps.c
> +++ b/drivers/input/mouse/alps.c
> @@ -881,6 +881,34 @@ static void alps_get_finger_coordinate_v7(struct input_mt_pos *mt,
>                                           unsigned char *pkt,
>                                           unsigned char pkt_id)
>  {
> +       /*
> +        *       packet-fmt    b7   b6    b5   b4   b3   b2   b1   b0
> +        * Byte0 TWO & MULTI    L    1     R    M    1 Y0-2 Y0-1 Y0-0
> +        * Byte0 NEW            L    1  X1-5    1    1 Y0-2 Y0-1 Y0-0
> +        * Byte1            Y0-10 Y0-9  Y0-8 Y0-7 Y0-6 Y0-5 Y0-4 Y0-3
> +        * Byte2            X0-11    1 X0-10 X0-9 X0-8 X0-7 X0-6 X0-5
> +        * Byte3            X1-11    1  X0-4 X0-3    1 X0-2 X0-1 X0-0
> +        * Byte4 TWO        X1-10  TWO  X1-9 X1-8 X1-7 X1-6 X1-5 X1-4
> +        * Byte4 MULTI      X1-10  TWO  X1-9 X1-8 X1-7 X1-6 Y1-5    1
> +        * Byte4 NEW        X1-10  TWO  X1-9 X1-8 X1-7 X1-6    0    0
> +        * Byte5 TWO & NEW  Y1-10    0  Y1-9 Y1-8 Y1-7 Y1-6 Y1-5 Y1-4
> +        * Byte5 MULTI      Y1-10    0  Y1-9 Y1-8 Y1-7 Y1-6  F-1  F-0
> +        * L:         Left button
> +        * R / M:     Non-clickpads: Right / Middle button
> +        *            Clickpads: When > 2 fingers are down, and some fingers
> +        *            are in the button area, then the 2 coordinates reported
> +        *            are for fingers outside the button area and these report
> +        *            extra fingers being present in the right / left button
> +        *            area. Note these fingers are not added to the F field!
> +        *            so if a TWO packet is received and R = 1 then there are
> +        *            3 fingers down, etc.
> +        * TWO:       1: Two touches present, byte 0/4/5 are in TWO fmt
> +        *            0: If byte 4 bit 0 is 1, then byte 0/4/5 are in MULTI fmt
> +        *               otherwise byte 0 bit 4 must be set and byte 0/4/5 are
> +        *               in NEW fmt
> +        * F:         Number of fingers - 3, 0 means 3 fingers, 1 means 4 ...
> +        */
> +
>         mt[0].x = ((pkt[2] & 0x80) << 4);
>         mt[0].x |= ((pkt[2] & 0x3F) << 5);
>         mt[0].x |= ((pkt[3] & 0x30) >> 1);
> --
> 2.1.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2014-12-05 21:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-03 13:27 [PATCH 1/4] alps: v7: Document the v7 touchpad packet protocol Hans de Goede
2014-12-03 13:27 ` [PATCH 2/4] alps: v7: Ignore new packets Hans de Goede
2014-12-03 13:27 ` [PATCH 3/4] alps: v7: Sometimes a single touch is reported in mt[1] rather then mt[0] Hans de Goede
2014-12-03 13:27 ` [PATCH 4/4] alps: v7: Fix finger counting for > 2 fingers on clickpads Hans de Goede
2014-12-05 21:58 ` Benjamin Tissoires [this message]
2014-12-18 18:04   ` [PATCH 1/4] alps: v7: Document the v7 touchpad packet protocol Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAN+gG=FMY8Mna0vAx16_6qiK9jXOhGGPaCLrAvM4z1-CUOFzUQ@mail.gmail.com' \
    --to=benjamin.tissoires@gmail.com \
    --cc=benjamin.tissoires@redhat.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-input@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).