aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
diff options
context:
space:
mode:
author=?UTF-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= <arve@android.com>2011-12-13 01:19:27 +0800
committerAndy Green <andy.green@linaro.org>2012-01-09 10:46:08 +0800
commit286ca5c885e21305f8f846dab2d2d6ec217f178c (patch)
tree4dbca8270dbf90f468be7119e58f98bc3c27d72f /drivers/input
parentd40bd2b49b53afe53baac1df920f75b2a639b00f (diff)
Input: gpio_input: disable_irq -> disable_irq_nosync
MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Arve Hjønnevåg <arve@android.com>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/misc/gpio_input.c4
-rw-r--r--drivers/input/misc/gpio_matrix.c2
2 files changed, 2 insertions, 4 deletions
diff --git a/drivers/input/misc/gpio_input.c b/drivers/input/misc/gpio_input.c
index 6aef289e6e1..758df480600 100644
--- a/drivers/input/misc/gpio_input.c
+++ b/drivers/input/misc/gpio_input.c
@@ -182,7 +182,7 @@ static irqreturn_t gpio_event_input_irq_handler(int irq, void *dev_id)
ds->info->type, key_entry->code,
keymap_index, key_entry->gpio);
} else {
- disable_irq(irq);
+ disable_irq_nosync(irq);
ks->debounce = DEBOUNCE_UNSTABLE;
}
spin_unlock_irqrestore(&ds->irq_lock, irqflags);
@@ -245,11 +245,9 @@ int gpio_event_input_func(struct gpio_event_input_devs *input_devs,
di = container_of(info, struct gpio_event_input_info, info);
if (func == GPIO_EVENT_FUNC_SUSPEND) {
- spin_lock_irqsave(&ds->irq_lock, irqflags);
if (ds->use_irq)
for (i = 0; i < di->keymap_size; i++)
disable_irq(gpio_to_irq(di->keymap[i].gpio));
- spin_unlock_irqrestore(&ds->irq_lock, irqflags);
hrtimer_cancel(&ds->timer);
return 0;
}
diff --git a/drivers/input/misc/gpio_matrix.c b/drivers/input/misc/gpio_matrix.c
index adb00ab47b6..f645471b54d 100644
--- a/drivers/input/misc/gpio_matrix.c
+++ b/drivers/input/misc/gpio_matrix.c
@@ -220,7 +220,7 @@ static irqreturn_t gpio_keypad_irq_handler(int irq_in, void *dev_id)
return IRQ_HANDLED;
for (i = 0; i < mi->ninputs; i++)
- disable_irq(gpio_to_irq(mi->input_gpios[i]));
+ disable_irq_nosync(gpio_to_irq(mi->input_gpios[i]));
for (i = 0; i < mi->noutputs; i++) {
if (gpio_keypad_flags & GPIOKPF_DRIVE_INACTIVE)
gpio_set_value(mi->output_gpios[i],