Revert "Input: appletouch - fix integer overflow issue"

This reverts commit 04b4b88c.

While the original problem only caused a slight disturbance on the
edge of the touchpad, the commit above to "fix" it completely breaks
operation on some other models such as mine.

We'll sort this out separately, revert the patch for now.
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 8b449d1f
...@@ -205,8 +205,8 @@ struct atp { ...@@ -205,8 +205,8 @@ struct atp {
bool overflow_warned; bool overflow_warned;
int x_old; /* last reported x/y, */ int x_old; /* last reported x/y, */
int y_old; /* used for smoothing */ int y_old; /* used for smoothing */
u8 xy_cur[ATP_XSENSORS + ATP_YSENSORS]; signed char xy_cur[ATP_XSENSORS + ATP_YSENSORS];
u8 xy_old[ATP_XSENSORS + ATP_YSENSORS]; signed char xy_old[ATP_XSENSORS + ATP_YSENSORS];
int xy_acc[ATP_XSENSORS + ATP_YSENSORS]; int xy_acc[ATP_XSENSORS + ATP_YSENSORS];
int idlecount; /* number of empty packets */ int idlecount; /* number of empty packets */
struct work_struct work; struct work_struct work;
...@@ -531,7 +531,7 @@ static void atp_complete_geyser_1_2(struct urb *urb) ...@@ -531,7 +531,7 @@ static void atp_complete_geyser_1_2(struct urb *urb)
for (i = 0; i < ATP_XSENSORS + ATP_YSENSORS; i++) { for (i = 0; i < ATP_XSENSORS + ATP_YSENSORS; i++) {
/* accumulate the change */ /* accumulate the change */
int change = dev->xy_old[i] - dev->xy_cur[i]; signed char change = dev->xy_old[i] - dev->xy_cur[i];
dev->xy_acc[i] -= change; dev->xy_acc[i] -= change;
/* prevent down drifting */ /* prevent down drifting */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment