From da9fda434cde76dfb8174548a63b685b4ac00a9c Mon Sep 17 00:00:00 2001
From: Rene van Paassen <rene.vanpaassen@gmail.com>
Date: Mon, 21 May 2007 00:32:03 -0400
Subject: Input: aiptek - use only absolute misc reports

To get an on - off reporting for proximity, absolute misc reports are
used. The mixture of absolute and relative reports is awkward

Signed-off-by: Rene van Paassen <rene.vanpaassen@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
---
 drivers/input/tablet/aiptek.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

(limited to 'drivers/input')

diff --git a/drivers/input/tablet/aiptek.c b/drivers/input/tablet/aiptek.c
index 7fb15af33c49..c7db623682de 100644
--- a/drivers/input/tablet/aiptek.c
+++ b/drivers/input/tablet/aiptek.c
@@ -417,6 +417,9 @@ static const char *map_val_to_str(const struct aiptek_map *map, int val)
  * Proximity. Why two events? I thought it interesting to know if the
  * Proximity event occurred while the tablet was in absolute or relative
  * mode.
+ * Update: REL_MISC proved not to be such a good idea. With REL_MISC you
+ * get an event transmitted each time. ABS_MISC works better, since it
+ * can be set and re-set. Thus, only using ABS_MISC from now on.
  *
  * Other tablets use the notion of a certain minimum stylus pressure
  * to infer proximity. While that could have been done, that is yet
@@ -639,7 +642,7 @@ static void aiptek_irq(struct urb *urb)
 						aiptek->curSetting.wheel = AIPTEK_WHEEL_DISABLE;
 					}
 				}
-				input_report_rel(inputdev, REL_MISC, p | AIPTEK_REPORT_TOOL_MOUSE);
+				input_report_abs(inputdev, ABS_MISC, p | AIPTEK_REPORT_TOOL_MOUSE);
 				input_sync(inputdev);
 			}
 		}
-- 
cgit