Skip to content

Commit

Permalink
HID: wacom: Limit touchstrip data to 13 bits
Browse files Browse the repository at this point in the history
Commit c7f0522 uses sixteen bits of data in the construction of 'strip1'
and 'strip2'. This can cause problems in some cases, however, since some
tablets store flags in the MSB of data[2] and data[4] that should not be
included in these values. This restores the 0x1f mask that used prior
to c7f0522.

Signed-off-by: Jason Gerecke <jason.gerecke@wacom.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
  • Loading branch information
Jason Gerecke authored and Jiri Kosina committed Dec 17, 2015
1 parent 8f9cfdd commit f73d08d
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/hid/wacom_wac.c
Original file line number Diff line number Diff line change
Expand Up @@ -545,8 +545,8 @@ static int wacom_intuos_pad(struct wacom_wac *wacom)
((data[6] & 0x0F) << 4) |
(data[5] & 0x0F);
}
strip1 = (data[1] << 8) | data[2];
strip2 = (data[3] << 8) | data[4];
strip1 = ((data[1] & 0x1f) << 8) | data[2];
strip2 = ((data[3] & 0x1f) << 8) | data[4];
}

prox = (buttons & ~(~0 << nbuttons)) | (keys & ~(~0 << nkeys)) |
Expand Down

0 comments on commit f73d08d

Please sign in to comment.