aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Jander <david@protonic.nl>2011-06-21 17:26:18 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2011-06-21 17:33:34 -0400
commit7e2ecdf438bb479e2b4667fc16b1a84d6348da04 (patch)
tree4dc99af4668935ddb64789af47e640a6e74dcfaf
parenteaa499aebf6265f18ffc836ead30059031c6d7a7 (diff)
Input: gpio_keys - switch to using threaded IRQs
Use a threaded interrupt handler in order to permit the handler to use a GPIO driver that causes things like I2C transactions being done inside the handler context. Signed-off-by: David Jander <david@protonic.nl> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
-rw-r--r--drivers/input/keyboard/gpio_keys.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
index 6e6145b9a4c1..6d0e2f64122b 100644
--- a/drivers/input/keyboard/gpio_keys.c
+++ b/drivers/input/keyboard/gpio_keys.c
@@ -415,7 +415,7 @@ static int __devinit gpio_keys_setup_key(struct platform_device *pdev,
415 if (!button->can_disable) 415 if (!button->can_disable)
416 irqflags |= IRQF_SHARED; 416 irqflags |= IRQF_SHARED;
417 417
418 error = request_any_context_irq(irq, gpio_keys_isr, irqflags, desc, bdata); 418 error = request_threaded_irq(irq, NULL, gpio_keys_isr, irqflags, desc, bdata);
419 if (error < 0) { 419 if (error < 0) {
420 dev_err(dev, "Unable to claim irq %d; error %d\n", 420 dev_err(dev, "Unable to claim irq %d; error %d\n",
421 irq, error); 421 irq, error);
@@ -649,5 +649,5 @@ module_exit(gpio_keys_exit);
649 649
650MODULE_LICENSE("GPL"); 650MODULE_LICENSE("GPL");
651MODULE_AUTHOR("Phil Blundell <pb@handhelds.org>"); 651MODULE_AUTHOR("Phil Blundell <pb@handhelds.org>");
652MODULE_DESCRIPTION("Keyboard driver for CPU GPIOs"); 652MODULE_DESCRIPTION("Keyboard driver for GPIOs");
653MODULE_ALIAS("platform:gpio-keys"); 653MODULE_ALIAS("platform:gpio-keys");