diff options
author | Henrik Rydberg <rydberg@euromail.se> | 2010-12-15 13:50:34 +0100 |
---|---|---|
committer | Henrik Rydberg <rydberg@euromail.se> | 2010-12-16 10:41:38 +0100 |
commit | c5f4dec1ceb6ab773bbbefbe64a7c990c7d6b17f (patch) | |
tree | fdc8b67537b73474bd34b65d0d1c5bc7a9de3c7a /include/linux/input.h | |
parent | 8cde81001626c4c60b26ef2eb5fc522885ed9fd0 (diff) | |
download | op-kernel-dev-c5f4dec1ceb6ab773bbbefbe64a7c990c7d6b17f.zip op-kernel-dev-c5f4dec1ceb6ab773bbbefbe64a7c990c7d6b17f.tar.gz |
input: mt: Move tracking and pointer emulation to input-mt
The drivers using the type B protocol all report tracking information
the same way. The contact id is semantically equivalent to
ABS_MT_SLOT, and the handling of ABS_MT_TRACKING_ID only complicates
the driver. The situation can be improved upon by providing a common
pointer emulation code, thereby removing the need for the tracking id
in the driver. This patch moves all tracking event handling over to
the input core, simplifying both the existing drivers and the ones
currently in preparation.
Acked-by: Ping Cheng <pingc@wacom.com>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
Diffstat (limited to 'include/linux/input.h')
-rw-r--r-- | include/linux/input.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/input.h b/include/linux/input.h index 99e2a52c..6de145d 100644 --- a/include/linux/input.h +++ b/include/linux/input.h @@ -848,6 +848,7 @@ struct input_keymap_entry { */ #define MT_TOOL_FINGER 0 #define MT_TOOL_PEN 1 +#define MT_TOOL_MAX 1 /* * Values describing the status of a force-feedback effect @@ -1122,6 +1123,7 @@ struct ff_effect { * of tracked contacts * @mtsize: number of MT slots the device uses * @slot: MT slot currently being transmitted + * @trkid: stores MT tracking ID for the current contact * @absinfo: array of &struct absinfo elements holding information * about absolute axes (current value, min, max, flat, fuzz, * resolution) @@ -1206,6 +1208,7 @@ struct input_dev { struct input_mt_slot *mt; int mtsize; int slot; + int trkid; struct input_absinfo *absinfo; |