Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 38a1807b authored by Jason Gerecke's avatar Jason Gerecke Committed by Dmitry Torokhov
Browse files

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: default avatarJason Gerecke <killertofu@gmail.com>
Tested-by: default avatarAaron Skomra <Aaron.Skomra@wacom.com>
Reviewed-by: default avatarCarl Worth <cworth@cworth.org>
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 74b63417
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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;