summaryrefslogtreecommitdiffstats
path: root/drivers/hid
diff options
context:
space:
mode:
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>2013-03-22 18:38:31 +0100
committerJiri Kosina <jkosina@suse.cz>2013-03-27 14:02:46 +0100
commit5b6498a1c89be9f3a545ab163e33e5abf45493e9 (patch)
treec4fe855c2d077199fca75a685e07c38bfa15048d /drivers/hid
parentHID: multitouch: do not map usage from non used reports (diff)
downloadlinux-5b6498a1c89be9f3a545ab163e33e5abf45493e9.tar.xz
linux-5b6498a1c89be9f3a545ab163e33e5abf45493e9.zip
HID: multitouch: change touch sensor detection in mt_input_configured()
To implement different methods for pen and touch, the previous implementation has to be reworked. This detection of the input attached to the touch sensor is the same than the one used in mt_report(). Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r--drivers/hid/hid-multitouch.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index 611c88cbc40e..6a934dee1b82 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -857,13 +857,10 @@ static void mt_post_parse(struct mt_device *td)
static void mt_input_configured(struct hid_device *hdev, struct hid_input *hi)
{
- struct input_dev *input = hi->input;
-
- /* Only initialize slots for MT input devices */
- if (!test_bit(ABS_MT_POSITION_X, input->absbit))
- return;
+ struct mt_device *td = hid_get_drvdata(hdev);
- mt_touch_input_configured(hdev, hi);
+ if (hi->report->id == td->mt_report_id)
+ mt_touch_input_configured(hdev, hi);
}
static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)