summaryrefslogtreecommitdiffstats
path: root/drivers/input
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2011-03-17 06:11:14 +0100
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2011-03-17 07:29:16 +0100
commitdacb650f125c7dc7ead9735d081bc078325b6d23 (patch)
treec26f9d00bb7c75bc8c820d5f65af1b7a4b947233 /drivers/input
parentInput: tsc2005 - don't use work for 'pen up' handling (diff)
downloadlinux-dacb650f125c7dc7ead9735d081bc078325b6d23.tar.xz
linux-dacb650f125c7dc7ead9735d081bc078325b6d23.zip
Input: tsc2005 - do not rearm timer in hardirq handler
We will most likely rearm it yet again the IRQ thread so doing it here is pointless. Tested-by: Aaro Koskinen <aaro.koskinen@nokia.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/touchscreen/tsc2005.c14
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/input/touchscreen/tsc2005.c b/drivers/input/touchscreen/tsc2005.c
index dc309da59fca..7a7653390187 100644
--- a/drivers/input/touchscreen/tsc2005.c
+++ b/drivers/input/touchscreen/tsc2005.c
@@ -225,17 +225,6 @@ static void tsc2005_update_pen_state(struct tsc2005 *ts,
pressure);
}
-static irqreturn_t tsc2005_irq_handler(int irq, void *dev_id)
-{
- struct tsc2005 *ts = dev_id;
-
- /* update the penup timer only if it's pending */
- mod_timer_pending(&ts->penup_timer,
- jiffies + msecs_to_jiffies(TSC2005_PENUP_TIME_MS));
-
- return IRQ_WAKE_THREAD;
-}
-
static irqreturn_t tsc2005_irq_thread(int irq, void *_ts)
{
struct tsc2005 *ts = _ts;
@@ -596,8 +585,7 @@ static int __devinit tsc2005_probe(struct spi_device *spi)
input_set_abs_params(input_dev, ABS_Y, 0, max_y, fudge_y, 0);
input_set_abs_params(input_dev, ABS_PRESSURE, 0, max_p, fudge_p, 0);
- error = request_threaded_irq(spi->irq,
- tsc2005_irq_handler, tsc2005_irq_thread,
+ error = request_threaded_irq(spi->irq, NULL, tsc2005_irq_thread,
IRQF_TRIGGER_RISING, "tsc2005", ts);
if (error) {
dev_err(&spi->dev, "Failed to request irq, err: %d\n", error);