diff options
Diffstat (limited to 'drivers/input/touchscreen/ads7846.c')
-rw-r--r-- | drivers/input/touchscreen/ads7846.c | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index 09c810999b9..52d2ca147d8 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 */ |