aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Dyer <nick.dyer@itdev.co.uk>2018-07-27 11:49:10 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2018-07-27 11:59:33 -0700
commit2ca3ba0ae4cf0bf9c17f1a04298c3acca24be5e0 (patch)
tree2fbba83a1722b836afb756dc38e11f24d50abd11
parentInput: atmel_mxt_ts - zero terminate config firmware file (diff)
downloadlinux-dev-2ca3ba0ae4cf0bf9c17f1a04298c3acca24be5e0.tar.xz
linux-dev-2ca3ba0ae4cf0bf9c17f1a04298c3acca24be5e0.zip
Input: atmel_mxt_ts - don't report zero pressure from T9
If T9.CTRL DISAMP is set, then pressure is reported as zero. This means some app layers (eg tslib) will ignore the contact. Signed-off-by: Nick Dyer <nick.dyer@itdev.co.uk> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r--drivers/input/touchscreen/atmel_mxt_ts.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
index 77387f896262..e32667d82d0f 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -843,6 +843,10 @@ static void mxt_proc_t9_message(struct mxt_data *data, u8 *message)
mxt_input_sync(data);
}
+ /* if active, pressure must be non-zero */
+ if (!amplitude)
+ amplitude = MXT_PRESSURE_DEFAULT;
+
/* Touch active */
input_mt_report_slot_state(input_dev, MT_TOOL_FINGER, 1);
input_report_abs(input_dev, ABS_MT_POSITION_X, x);