Commit c7f0522 uses sixteen bits of data in the construction of 'strip1'
and 'strip2'. This can cause problems in some cases, however, since some
tablets store flags in the MSB of data[2] and data[4] that should not be
included in these values. This restores the 0x1f mask that used prior
to c7f0522.

Signed-off-by: Jason Gerecke <[email protected]>
Signed-off-by: Jiri Kosina <[email protected]>
[[email protected]: Imported into input-wacom repository (f73d08d)]
Signed-off-by: Jason Gerecke <[email protected]>
[[email protected]: backported from input-wacom 497c6e1]
Signed-off-by: Jason Gerecke <[email protected]>
---
 2.6.38/wacom_wac.c | 4 ++--
 3.7/wacom_wac.c    | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/2.6.38/wacom_wac.c b/2.6.38/wacom_wac.c
index 800085d..7432896 100644
--- a/2.6.38/wacom_wac.c
+++ b/2.6.38/wacom_wac.c
@@ -494,8 +494,8 @@ static int wacom_intuos_pad(struct wacom_wac *wacom)
                                  ((data[6] & 0x0F) << 4)  |
                                  (data[5] & 0x0F);
                }
-               strip1 = (data[1] << 8) | data[2];
-               strip2 = (data[3] << 8) | data[4];
+               strip1 = ((data[1] & 0x1f) << 8) | data[2];
+               strip2 = ((data[3] & 0x1f) << 8) | data[4];
        }
 
        prox = (buttons & ~(~0 << nbuttons)) | (keys & ~(~0 << nkeys)) |
diff --git a/3.7/wacom_wac.c b/3.7/wacom_wac.c
index 0d3cd60..a1dfe32 100644
--- a/3.7/wacom_wac.c
+++ b/3.7/wacom_wac.c
@@ -494,8 +494,8 @@ static int wacom_intuos_pad(struct wacom_wac *wacom)
                                  ((data[6] & 0x0F) << 4)  |
                                  (data[5] & 0x0F);
                }
-               strip1 = (data[1] << 8) | data[2];
-               strip2 = (data[3] << 8) | data[4];
+               strip1 = ((data[1] & 0x1f) << 8) | data[2];
+               strip2 = ((data[3] & 0x1f) << 8) | data[4];
        }
 
        prox = (buttons & ~(~0 << nbuttons)) | (keys & ~(~0 << nkeys)) |
-- 
2.7.1


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to