summary refs log tree commit diff
path: root/drivers/input
diff options
context:
space:
mode:
authorImre Deak <imre.deak@nokia.com>2006-04-26 00:12:14 -0400
committerDmitry Torokhov <dtor_core@ameritech.net>2006-04-26 00:12:14 -0400
commitae82d5ab05068fccef2329f4607670f24c41606f (patch)
treebff0d33646f317e08d6974cc4073601c3939d6e1 /drivers/input
parentc9e617a563ad646239270fa2222cdb06966cf1fa (diff)
downloadlinux-ae82d5ab05068fccef2329f4607670f24c41606f.tar.gz
Input: ads7846 - report 0 pressure value along with pen up event
X touchscreen drivers that don't interpret the designated pen up message
assume a pen up event from a pressure value 0. For these we generate a
pressure 0 message along with the pen up message.

Signed-off-by: Imre Deak <imre.deak@nokia.com>
Acked-by: Juha Yrjola <juha.yrjola@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/touchscreen/ads7846.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c
index e7cabf12c8dc..1aaa153a2774 100644
--- a/drivers/input/touchscreen/ads7846.c
+++ b/drivers/input/touchscreen/ads7846.c
@@ -375,11 +375,13 @@ static void ads7846_rx(void *ads)
 	if (Rt) {
 		input_report_abs(input_dev, ABS_X, x);
 		input_report_abs(input_dev, ABS_Y, y);
-		input_report_abs(input_dev, ABS_PRESSURE, Rt);
 		sync = 1;
 	}
-	if (sync)
+
+	if (sync) {
+		input_report_abs(input_dev, ABS_PRESSURE, Rt);
 		input_sync(input_dev);
+	}
 
 #ifdef	VERBOSE
 	if (Rt || ts->pendown)