From: "Henrik Rydberg" <rydberg@euromail.se>
To: Benjamin Tissoires <benjamin.tissoires@enac.fr>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Jiri Kosina <jkosina@suse.cz>,
Stephane Chatty <chatty@lii-enac.fr>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4] hid-multitouch: migrate 3M PCT touch screens to hid-multitouch
Date: Tue, 22 Mar 2011 17:58:15 +0100 [thread overview]
Message-ID: <20110322165815.GA6706@polaris.bitmath.org> (raw)
In-Reply-To: <1300811641-3327-1-git-send-email-benjamin.tissoires@enac.fr>
On Tue, Mar 22, 2011 at 05:34:01PM +0100, Benjamin Tissoires wrote:
> This patch merges the hid-3m-pct driver into hid-multitouch.
> To keep devices working the same way they used to with hid-3m-pct,
> we need to add two signal/noise ratios for width and height.
> We also need to work on width/height to send proper
> ABS_MT_ORIENTATION flag.
>
> Importing 3M into hid-multitouch also solved the bug in which
> devices handling width and height in their report descriptors
> did not show ABS_MT_TOUCH_MAJOR and ABS_MT_TOUCH_MINOR.
>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
> Reviewed-by: Stéphane Chatty <chatty@enac.fr>
> ---
[...]
> Henrik, do I still have your Reviewed-and-tested-by ?
Yep, looks good. One more thing, though:
> @@ -332,11 +351,18 @@ static void mt_emit_event(struct mt_device *td, struct input_dev *input)
> input_mt_report_slot_state(input, MT_TOOL_FINGER,
> s->touch_state);
> if (s->touch_state) {
> + /* this finger is on the screen */
> + int wide = (s->w > s->h);
> + /* divided by two to match visual scale of touch */
> + int major = max(s->w, s->h) >> 1;
> + int minor = min(s->w, s->h) >> 1;
This scaling is most likely not correct for all devices. I went
through a set of devices some time ago, running mtview on all of them,
visually inspecting the touch size. Some were low by a factor of two,
some were high by a factor of two. A confirmation that the other
devices supported by this driver seem right would be good. If not, a
quirk should probably be added here.
> +
> input_event(input, EV_ABS, ABS_MT_POSITION_X, s->x);
> input_event(input, EV_ABS, ABS_MT_POSITION_Y, s->y);
> + input_event(input, EV_ABS, ABS_MT_ORIENTATION, wide);
> input_event(input, EV_ABS, ABS_MT_PRESSURE, s->p);
> - input_event(input, EV_ABS, ABS_MT_TOUCH_MAJOR, s->w);
> - input_event(input, EV_ABS, ABS_MT_TOUCH_MINOR, s->h);
> + input_event(input, EV_ABS, ABS_MT_TOUCH_MAJOR, major);
> + input_event(input, EV_ABS, ABS_MT_TOUCH_MINOR, minor);
> }
> s->seen_in_this_frame = false;
Thanks,
Henrik
--
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
WARNING: multiple messages have this Message-ID (diff)
From: "Henrik Rydberg" <rydberg@euromail.se>
To: Benjamin Tissoires <benjamin.tissoires@enac.fr>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Jiri Kosina <jkosina@suse.cz>,
Stephane Chatty <chatty@lii-enac.fr>,
linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4] hid-multitouch: migrate 3M PCT touch screens to hid-multitouch
Date: Tue, 22 Mar 2011 17:58:15 +0100 [thread overview]
Message-ID: <20110322165815.GA6706@polaris.bitmath.org> (raw)
In-Reply-To: <1300811641-3327-1-git-send-email-benjamin.tissoires@enac.fr>
On Tue, Mar 22, 2011 at 05:34:01PM +0100, Benjamin Tissoires wrote:
> This patch merges the hid-3m-pct driver into hid-multitouch.
> To keep devices working the same way they used to with hid-3m-pct,
> we need to add two signal/noise ratios for width and height.
> We also need to work on width/height to send proper
> ABS_MT_ORIENTATION flag.
>
> Importing 3M into hid-multitouch also solved the bug in which
> devices handling width and height in their report descriptors
> did not show ABS_MT_TOUCH_MAJOR and ABS_MT_TOUCH_MINOR.
>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@enac.fr>
> Reviewed-by: Stéphane Chatty <chatty@enac.fr>
> ---
[...]
> Henrik, do I still have your Reviewed-and-tested-by ?
Yep, looks good. One more thing, though:
> @@ -332,11 +351,18 @@ static void mt_emit_event(struct mt_device *td, struct input_dev *input)
> input_mt_report_slot_state(input, MT_TOOL_FINGER,
> s->touch_state);
> if (s->touch_state) {
> + /* this finger is on the screen */
> + int wide = (s->w > s->h);
> + /* divided by two to match visual scale of touch */
> + int major = max(s->w, s->h) >> 1;
> + int minor = min(s->w, s->h) >> 1;
This scaling is most likely not correct for all devices. I went
through a set of devices some time ago, running mtview on all of them,
visually inspecting the touch size. Some were low by a factor of two,
some were high by a factor of two. A confirmation that the other
devices supported by this driver seem right would be good. If not, a
quirk should probably be added here.
> +
> input_event(input, EV_ABS, ABS_MT_POSITION_X, s->x);
> input_event(input, EV_ABS, ABS_MT_POSITION_Y, s->y);
> + input_event(input, EV_ABS, ABS_MT_ORIENTATION, wide);
> input_event(input, EV_ABS, ABS_MT_PRESSURE, s->p);
> - input_event(input, EV_ABS, ABS_MT_TOUCH_MAJOR, s->w);
> - input_event(input, EV_ABS, ABS_MT_TOUCH_MINOR, s->h);
> + input_event(input, EV_ABS, ABS_MT_TOUCH_MAJOR, major);
> + input_event(input, EV_ABS, ABS_MT_TOUCH_MINOR, minor);
> }
> s->seen_in_this_frame = false;
Thanks,
Henrik
next prev parent reply other threads:[~2011-03-22 17:03 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-18 13:27 [PATCH 0/5] Migrations to hid-multitouch, round 3 Benjamin Tissoires
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-18 13:27 ` [PATCH v3 1/5] hid-multitouch: Auto detection of maxcontacts Benjamin Tissoires
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-21 8:47 ` Henrik Rydberg
2011-03-18 13:27 ` [PATCH v3 2/5] hid-multitouch: migrate support for Stantum panels to the unified driver Benjamin Tissoires
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-21 8:49 ` Henrik Rydberg
2011-03-21 8:49 ` Henrik Rydberg
2011-03-18 13:27 ` [PATCH v3 3/5] hid-multitouch: migrate Cando dual touch panels to hid-multitouch Benjamin Tissoires
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-21 8:50 ` Henrik Rydberg
2011-03-21 8:50 ` Henrik Rydberg
2011-03-18 13:27 ` [PATCH v3 4/5] hid-multitouch: refactor initialization of ABS_MT_ORIENTATION Benjamin Tissoires
2011-03-21 9:02 ` Henrik Rydberg
2011-03-21 13:32 ` Benjamin Tissoires
2011-03-21 13:32 ` Benjamin Tissoires
2011-03-21 13:50 ` Henrik Rydberg
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-18 13:27 ` [PATCH v3 5/5] hid-multitouch: migrate 3M PCT touch screens to hid-multitouch Benjamin Tissoires
2011-03-18 13:27 ` Benjamin Tissoires
2011-03-21 9:05 ` Henrik Rydberg
2011-03-21 10:13 ` Benjamin Tissoires
2011-03-21 10:13 ` Benjamin Tissoires
2011-03-21 10:34 ` Henrik Rydberg
2011-03-21 10:34 ` Henrik Rydberg
2011-03-21 19:06 ` Henrik Rydberg
2011-03-21 19:56 ` Benjamin Tissoires
2011-03-21 19:56 ` Benjamin Tissoires
2011-03-22 16:34 ` [PATCH v4] " Benjamin Tissoires
2011-03-22 16:34 ` Benjamin Tissoires
2011-03-22 16:58 ` Henrik Rydberg [this message]
2011-03-22 16:58 ` Henrik Rydberg
2011-03-24 11:46 ` Jiri Kosina
2011-03-24 11:46 ` Jiri Kosina
2011-03-21 16:09 ` [PATCH 0/5] Migrations to hid-multitouch, round 3 Jiri Kosina
2011-03-21 18:22 ` Henrik Rydberg
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=20110322165815.GA6706@polaris.bitmath.org \
--to=rydberg@euromail.se \
--cc=benjamin.tissoires@enac.fr \
--cc=chatty@lii-enac.fr \
--cc=dmitry.torokhov@gmail.com \
--cc=jkosina@suse.cz \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.