Input: wacom - handle 1024 pressure levels in wacom_tpc_pen
Some tablet PC sensors (e.g. the 0xEC found in the Thinkpad Yoga) report more than 256 pressure levels and will experience wraparound unless the full range is read. Signed-off-by: Jason Gerecke <killertofu@gmail.com> Tested-by: Aaron Skomra <Aaron.Skomra@wacom.com> Reviewed-by: Carl Worth <cworth@cworth.org> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
74b634178e
commit
38a1807bad
|
@ -1087,7 +1087,7 @@ static int wacom_tpc_pen(struct wacom_wac *wacom)
|
|||
input_report_key(input, BTN_STYLUS2, data[1] & 0x10);
|
||||
input_report_abs(input, ABS_X, le16_to_cpup((__le16 *)&data[2]));
|
||||
input_report_abs(input, ABS_Y, le16_to_cpup((__le16 *)&data[4]));
|
||||
input_report_abs(input, ABS_PRESSURE, ((data[7] & 0x01) << 8) | data[6]);
|
||||
input_report_abs(input, ABS_PRESSURE, ((data[7] & 0x03) << 8) | data[6]);
|
||||
input_report_key(input, BTN_TOUCH, data[1] & 0x05);
|
||||
input_report_key(input, wacom->tool[0], prox);
|
||||
return 1;
|
||||
|
|
Loading…
Reference in New Issue