summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Kempin <denniskempin@chromium.org>2013-06-05 11:55:54 -0700
committerPeter Wu <lekensteyn@gmail.com>2013-09-04 22:28:57 +0200
commitc2d078024e4cab62b360cdc1b88b06ad1fccfb61 (patch)
tree7a2ebb41167dde61dc59cc2cbf6f266fc323eca7
parent782ad4a03ba58a98304e93673c0f0eb3839018a8 (diff)
downloadlinux-c2d078024e4cab62b360cdc1b88b06ad1fccfb61.tar.gz
CHROMIUM: hid-logitech-wtp: fixed finger status
Fingers status was not parsed correctly which caused fingers to not be reported in some cases. BUG=chromium:240850 TEST=manual test Change-Id: Ia08277a85161403b29e036f356ca344188564200 Signed-off-by: Dennis Kempin <denniskempin@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57661 Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
-rw-r--r--drivers/hid/hid-logitech-wtp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hid/hid-logitech-wtp.c b/drivers/hid/hid-logitech-wtp.c
index 6898e51d105e..2f0ecc6b9202 100644
--- a/drivers/hid/hid-logitech-wtp.c
+++ b/drivers/hid/hid-logitech-wtp.c
@@ -320,7 +320,7 @@ static int tprxy_parse_feature_event(struct wtp_data *wtp,
for (i = 0; i < TPRXY_SLOTS_PER_FRAME; ++i) {
u8 *raw = buf + (2 + i * 7);
- event->fingers[i].status = raw[0];
+ event->fingers[i].status = get_bit(raw[2], 6);
event->fingers[i].abs_x = make_u16(raw[0] & 0x3f, raw[1]);
event->fingers[i].abs_y = make_u16(raw[2] & 0x3f, raw[3]);
event->fingers[i].pressure = raw[5];