From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Chase Douglas <chase.douglas@canonical.com>, rydberg@euromail.se
Cc: Daniel Kurtz <djkurtz@chromium.org>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
olofj@chromium.org, chris@cnpbagwell.com
Subject: Re: [PATCH 4/9 v5] Input: synaptics - add image sensor support
Date: Mon, 22 Aug 2011 14:05:15 -0700 [thread overview]
Message-ID: <201108221405.15767.dmitry.torokhov@gmail.com> (raw)
In-Reply-To: <4E52C252.9060904@canonical.com>
On Monday, August 22, 2011 01:55:46 PM Chase Douglas wrote:
> On 08/22/2011 04:05 AM, Daniel Kurtz wrote:
> > Synaptics makes (at least) two kinds of touchpad sensors:
> > * Older pads use a profile sensor that could only infer the location
> >
> > of individual fingers based on the projection of their profiles
> > onto row and column sensors.
> >
> > * Newer pads use an image sensor that can track true finger position
> >
> > using a two-dimensional sensor grid.
> >
> > Both sensor types support an "Advanced Gesture Mode":
> > When multiple fingers are detected, the touchpad sends alternating
> > "Advanced Gesture Mode" (AGM) and "Simple Gesture Mode" (SGM)
> > packets.
> > The AGM packets have w=2, and contain reduced resolution finger data
> > The SGM packets have w={0,1} and contain full resolution finger data
> >
> > Profile sensors try to report the "upper" (larger y value) finger in
> > the SGM packet, and the lower (smaller y value) in the AGM packet.
> > However, due to the nature of the profile sensor, they easily get
> > confused when fingers cross, and can start reporting the x-coordinate
> > of one with the y-coordinate of the other. Thus, for profile
> > sensors, "semi-mt" was created, which reports a "bounding box"
> > created by pairing min and max coordinates of the two pairs of
> > reported fingers.
> >
> > Image sensors can report the actual coordinates of two of the fingers
> > present. This patch detects if the touchpad is an image sensor and
> > reports finger data using the MT-B protocol.
> >
> > NOTE: This patch only adds partial support for 2-finger gestures.
> >
> > The proper interpretation of the slot contents when more than
> > two fingers are present is left to later patches. Also,
> > handling of 'number of fingers' transitions is incomplete.
> >
> > Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
>
> It's fine with me. It adds a bit of asymmetry in packet processing
> between mt and non-mt trackpads. This could be reworked by splitting
> synaptics_process_packet() up into an mt case function (which is what
> synaptics_image_sensor_process() is), and a non-mt case function. I
> think that would be nice, but not a big deal so:
>
> Acked-by: Chase Douglas <chase.douglas@canonical.com>
Right, I think it can be done later; I am quite happy with the code at
the moment...
Henrik, you commented a few times on the earlier patches, are you happy
with this version?
Thanks.
--
Dmitry
next prev parent reply other threads:[~2011-08-22 21:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-22 11:05 [PATCH 0/9 v5] Synaptics image sensor support Daniel Kurtz
2011-08-22 11:05 ` [PATCH 1/9 v5] Input: synaptics - refactor y inversion Daniel Kurtz
2011-08-22 11:05 ` [PATCH 2/9 v5] Input: synaptics - refactor agm packet parsing Daniel Kurtz
2011-08-22 11:05 ` [PATCH 3/9 v5] Input: synaptics - refactor initialization of abs position axes Daniel Kurtz
2011-08-22 11:05 ` [PATCH 4/9 v5] Input: synaptics - add image sensor support Daniel Kurtz
2011-08-22 20:55 ` Chase Douglas
2011-08-22 21:05 ` Dmitry Torokhov [this message]
2011-08-23 21:15 ` Henrik Rydberg
2011-09-09 14:14 ` Daniel Kurtz
[not found] ` <CAGS+omDuwL9pC6GJ_DzB02CBSQE2BwGW=p3xrTbY2hTd1S16uA@mail.gmail.com>
2011-09-09 16:15 ` Dmitry Torokhov
2011-08-22 11:05 ` [PATCH 5/9 v5] Input: synaptics - decode AGM packet types Daniel Kurtz
2011-08-22 11:06 ` [PATCH 6/9 v5] Input: mt - document devices reporting more touches than slots Daniel Kurtz
2011-08-22 11:06 ` [PATCH 7/9 v5] Input: synaptics - process finger (<=3) transitions Daniel Kurtz
2011-08-22 11:06 ` [PATCH 8/9 v5] Input: add BTN_TOOL_QUINTTAP for reporting 5 fingers on touchpad Daniel Kurtz
2011-08-22 11:06 ` [PATCH 9/9 v5] Input: synaptics - process finger (<=5) transitions Daniel Kurtz
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=201108221405.15767.dmitry.torokhov@gmail.com \
--to=dmitry.torokhov@gmail.com \
--cc=chase.douglas@canonical.com \
--cc=chris@cnpbagwell.com \
--cc=djkurtz@chromium.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=olofj@chromium.org \
--cc=rydberg@euromail.se \
/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).