summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorStefan Agner <stefan.agner@toradex.com>2014-12-16 10:24:29 +0100
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2015-11-02 18:27:01 +0100
commitf09c7a335edb94a1439eee92cce8e9d399af50e1 (patch)
tree1921716f6cbcb89c73c4c6407bd09b1b80036558 /drivers
parent3385e637a4d041e518a926c11c1df571732951a2 (diff)
input: touchscreen: fusion: use level triggered interrupt
Use level triggered interrupt which makes sure that even we miss a rising edge (due to latencies in the kernel), the interrupt still will be handled later, and doesn't freeze the input device. (cherry picked from commit ef25b8a9f9c0ca7cc0f0f955d89d112c3e19f75b)
Diffstat (limited to 'drivers')
-rw-r--r--drivers/input/touchscreen/fusion_F0710A.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/fusion_F0710A.c b/drivers/input/touchscreen/fusion_F0710A.c
index c5c0f1fc38ea..e9a513426f9e 100644
--- a/drivers/input/touchscreen/fusion_F0710A.c
+++ b/drivers/input/touchscreen/fusion_F0710A.c
@@ -17,6 +17,7 @@
#include <asm/irq.h>
#include <linux/gpio.h>
#include <linux/input/fusion_F0710A.h>
+#include <linux/irq.h>
#include "fusion_F0710A.h"
@@ -335,6 +336,7 @@ static int fusion_F0710A_probe(struct i2c_client *i2c, const struct i2c_device_i
/* Use Pen Down GPIO as sampling interrupt */
i2c->irq = gpio_to_irq(pdata->gpio_int);
+ irq_set_irq_type(i2c->irq, IRQ_TYPE_LEVEL_HIGH);
if(!i2c->irq)
{