summaryrefslogtreecommitdiff
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 23:33:57 +0100
commit8b63fdcb095e5face40e492433c859c46ac21299 (patch)
tree9225e5d7f067b8cb3e482855ea81ef9fab60e2e9
parent4de508657b8e6c6c95bfdc9216c39a084694727b (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)
-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 0c7598b3da6e..861a208a35e6 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 <linux/slab.h>
#include <linux/of_gpio.h>
@@ -369,6 +370,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)
{