aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/touchscreen/ads7846.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/input/touchscreen/ads7846.c')
-rw-r--r--drivers/input/touchscreen/ads7846.c25
1 files changed, 8 insertions, 17 deletions
diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c
index 09c810999b92..52d2ca147d8f 100644
--- a/drivers/input/touchscreen/ads7846.c
+++ b/drivers/input/touchscreen/ads7846.c
@@ -29,10 +29,9 @@
29#include <linux/spi/ads7846.h> 29#include <linux/spi/ads7846.h>
30#include <asm/irq.h> 30#include <asm/irq.h>
31 31
32
33/* 32/*
34 * This code has been heavily tested on a Nokia 770, and lightly 33 * This code has been heavily tested on a Nokia 770, and lightly
35 * tested on other ads7846 devices (OSK/Mistral, Lubbock). 34 * tested on other ads7846 devices (OSK/Mistral, Lubbock, Spitz).
36 * TSC2046 is just newer ads7846 silicon. 35 * TSC2046 is just newer ads7846 silicon.
37 * Support for ads7843 tested on Atmel at91sam926x-EK. 36 * Support for ads7843 tested on Atmel at91sam926x-EK.
38 * Support for ads7845 has only been stubbed in. 37 * Support for ads7845 has only been stubbed in.
@@ -43,7 +42,7 @@
43 * have to maintain our own SW IRQ disabled status. This should be 42 * have to maintain our own SW IRQ disabled status. This should be
44 * removed as soon as the affected platform's IRQ handling is fixed. 43 * removed as soon as the affected platform's IRQ handling is fixed.
45 * 44 *
46 * app note sbaa036 talks in more detail about accurate sampling... 45 * App note sbaa036 talks in more detail about accurate sampling...
47 * that ought to help in situations like LCDs inducing noise (which 46 * that ought to help in situations like LCDs inducing noise (which
48 * can also be helped by using synch signals) and more generally. 47 * can also be helped by using synch signals) and more generally.
49 * This driver tries to utilize the measures described in the app 48 * This driver tries to utilize the measures described in the app
@@ -566,10 +565,8 @@ static void ads7846_rx(void *ads)
566 * once more the measurement 565 * once more the measurement
567 */ 566 */
568 if (packet->tc.ignore || Rt > ts->pressure_max) { 567 if (packet->tc.ignore || Rt > ts->pressure_max) {
569#ifdef VERBOSE 568 dev_vdbg(&ts->spi->dev, "ignored %d pressure %d\n",
570 pr_debug("%s: ignored %d pressure %d\n", 569 packet->tc.ignore, Rt);
571 dev_name(&ts->spi->dev), packet->tc.ignore, Rt);
572#endif
573 hrtimer_start(&ts->timer, ktime_set(0, TS_POLL_PERIOD), 570 hrtimer_start(&ts->timer, ktime_set(0, TS_POLL_PERIOD),
574 HRTIMER_MODE_REL); 571 HRTIMER_MODE_REL);
575 return; 572 return;
@@ -598,9 +595,7 @@ static void ads7846_rx(void *ads)
598 if (!ts->pendown) { 595 if (!ts->pendown) {
599 input_report_key(input, BTN_TOUCH, 1); 596 input_report_key(input, BTN_TOUCH, 1);
600 ts->pendown = 1; 597 ts->pendown = 1;
601#ifdef VERBOSE 598 dev_vdbg(&ts->spi->dev, "DOWN\n");
602 dev_dbg(&ts->spi->dev, "DOWN\n");
603#endif
604 } 599 }
605 600
606 if (ts->swap_xy) 601 if (ts->swap_xy)
@@ -608,12 +603,10 @@ static void ads7846_rx(void *ads)
608 603
609 input_report_abs(input, ABS_X, x); 604 input_report_abs(input, ABS_X, x);
610 input_report_abs(input, ABS_Y, y); 605 input_report_abs(input, ABS_Y, y);
611 input_report_abs(input, ABS_PRESSURE, Rt); 606 input_report_abs(input, ABS_PRESSURE, ts->pressure_max - Rt);
612 607
613 input_sync(input); 608 input_sync(input);
614#ifdef VERBOSE 609 dev_vdbg(&ts->spi->dev, "%4d/%4d/%4d\n", x, y, Rt);
615 dev_dbg(&ts->spi->dev, "%4d/%4d/%4d\n", x, y, Rt);
616#endif
617 } 610 }
618 611
619 hrtimer_start(&ts->timer, ktime_set(0, TS_POLL_PERIOD), 612 hrtimer_start(&ts->timer, ktime_set(0, TS_POLL_PERIOD),
@@ -723,9 +716,7 @@ static enum hrtimer_restart ads7846_timer(struct hrtimer *handle)
723 input_sync(input); 716 input_sync(input);
724 717
725 ts->pendown = 0; 718 ts->pendown = 0;
726#ifdef VERBOSE 719 dev_vdbg(&ts->spi->dev, "UP\n");
727 dev_dbg(&ts->spi->dev, "UP\n");
728#endif
729 } 720 }
730 721
731 /* measurement cycle ended */ 722 /* measurement cycle ended */