Patchwork [1/4] HID: wacom - request tool info only when we get general events

login
register
mail settings
Submitter Ping Cheng
Date Jan. 9, 2016, 1:14 a.m.
Message ID <1452302094-5521-1-git-send-email-pingc@wacom.com>
Download mbox | patch
Permalink /patch/7991531/
State New
Delegated to: Jiri Kosina
Headers show

Comments

Ping Cheng - Jan. 9, 2016, 1:14 a.m.
Move wacom_intuos_schedule_prox_event inside wacom_intuos_general
so we don't call it when general event data isn't ready.

Signed-off-by: Ping Cheng <pingc@wacom.com>
Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com>
---
 drivers/hid/wacom_wac.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
Jiri Kosina - Jan. 18, 2016, 10:05 p.m.
On Fri, 8 Jan 2016, Ping Cheng wrote:

> Move wacom_intuos_schedule_prox_event inside wacom_intuos_general
> so we don't call it when general event data isn't ready.
> 
> Signed-off-by: Ping Cheng <pingc@wacom.com>
> Reviewed-by: Jason Gerecke <jason.gerecke@wacom.com>

I've applied the whole series to for-4.6/wacom.

Thanks,

Patch

diff --git a/drivers/hid/wacom_wac.c b/drivers/hid/wacom_wac.c
index f706604..6449547 100644
--- a/drivers/hid/wacom_wac.c
+++ b/drivers/hid/wacom_wac.c
@@ -746,13 +746,6 @@  static int wacom_intuos_inout(struct wacom_wac *wacom)
 		return 2;
 	}
 
-	/* don't report other events if we don't know the ID */
-	if (!wacom->id[idx]) {
-		/* but reschedule a read of the current tool */
-		wacom_intuos_schedule_prox_event(wacom);
-		return 1;
-	}
-
 	return 0;
 }
 
@@ -893,6 +886,13 @@  static int wacom_intuos_general(struct wacom_wac *wacom)
 		data[0] != WACOM_REPORT_INTUOS_PEN)
 		return 0;
 
+	/* don't report events if we don't know the tool ID */
+	if (!wacom->id[idx]) {
+		/* but reschedule a read of the current tool */
+		wacom_intuos_schedule_prox_event(wacom);
+		return 1;
+	}
+
 	x = (be16_to_cpup((__be16 *)&data[2]) << 1) | ((data[9] >> 1) & 1);
 	y = (be16_to_cpup((__be16 *)&data[4]) << 1) | (data[9] & 1);
 	distance = data[9] >> 2;