aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenrik Rydberg <rydberg@euromail.se>2011-03-09 00:35:25 -0500
committerJiri Kosina <jkosina@suse.cz>2011-03-14 08:05:07 -0400
commitf153fc3990d4ad2709a52d7150e2c04363afb1fb (patch)
tree5b795be60ab76ebaa4366129445f8af738c81287
parentb2e7617e09a8e774d7819c629a0989cbddb5d1ab (diff)
HID: hid-multitouch: Send events per slot if CONTACTCOUNT is missing
The recent capacitive DWAV firmwares do not use the CONTACTCOUNT field, and the touch frame boundary can therefore not be determined. This patch makes the driver report the touch frame at each completed slot instead. Signed-off-by: Henrik Rydberg <rydberg@euromail.se> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/hid-multitouch.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index 69f8744deac8..4518006f4871 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -364,8 +364,11 @@ static int mt_event(struct hid_device *hid, struct hid_field *field,
364 return 0; 364 return 0;
365 } 365 }
366 366
367 if (usage->hid == td->last_slot_field) 367 if (usage->hid == td->last_slot_field) {
368 mt_complete_slot(td); 368 mt_complete_slot(td);
369 if (!td->last_field_index)
370 mt_emit_event(td, field->hidinput->input);
371 }
369 372
370 if (field->index == td->last_field_index 373 if (field->index == td->last_field_index
371 && td->num_received >= td->num_expected) 374 && td->num_received >= td->num_expected)