Skip to content

Commit

Permalink
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: appletouch - fix idle reset logic
  • Loading branch information
Linus Torvalds committed Sep 25, 2007
2 parents a7f3941 + cb56073 commit 973ed7c
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/input/mouse/appletouch.c
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,7 @@ static void atp_complete(struct urb* urb)
{
int x, y, x_z, y_z, x_f, y_f;
int retval, i, j;
int key;
struct atp *dev = urb->context;

switch (urb->status) {
Expand Down Expand Up @@ -468,6 +469,7 @@ static void atp_complete(struct urb* urb)
ATP_XFACT, &x_z, &x_f);
y = atp_calculate_abs(dev->xy_acc + ATP_XSENSORS, ATP_YSENSORS,
ATP_YFACT, &y_z, &y_f);
key = dev->data[dev->datalen - 1] & 1;

if (x && y) {
if (dev->x_old != -1) {
Expand Down Expand Up @@ -505,7 +507,7 @@ static void atp_complete(struct urb* urb)
the first touch unless reinitialised. Do so if it's been
idle for a while in order to avoid waking the kernel up
several hundred times a second */
if (atp_is_geyser_3(dev)) {
if (!key && atp_is_geyser_3(dev)) {
dev->idlecount++;
if (dev->idlecount == 10) {
dev->valid = 0;
Expand All @@ -514,7 +516,7 @@ static void atp_complete(struct urb* urb)
}
}

input_report_key(dev->input, BTN_LEFT, dev->data[dev->datalen - 1] & 1);
input_report_key(dev->input, BTN_LEFT, key);
input_sync(dev->input);

exit:
Expand Down

0 comments on commit 973ed7c

Please sign in to comment.