From 51ab041f969c4a12b2ccde17ddc90c107dfdc7e4 Mon Sep 17 00:00:00 2001 From: Linus Walleij Date: Tue, 20 Sep 2011 10:50:15 +0200 Subject: [PATCH] --- yaml --- r: 271148 b: refs/heads/master c: 479a0c7eee68243ad9915a9ccc217a35c4e5e0e2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/gpio/gpio-nomadik.c | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index b4d43cd0732b..ced0cd11c736 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3c0227d262a5835849c68eb8328db016caad6085 +refs/heads/master: 479a0c7eee68243ad9915a9ccc217a35c4e5e0e2 diff --git a/trunk/drivers/gpio/gpio-nomadik.c b/trunk/drivers/gpio/gpio-nomadik.c index 97e9be94141b..0b7ec1258c8e 100644 --- a/trunk/drivers/gpio/gpio-nomadik.c +++ b/trunk/drivers/gpio/gpio-nomadik.c @@ -58,7 +58,6 @@ struct nmk_gpio_chip { u32 rwimsc; u32 fwimsc; u32 slpm; - u32 enabled; u32 pull_up; }; @@ -605,11 +604,6 @@ static int nmk_gpio_irq_maskunmask(struct irq_data *d, bool enable) if (!nmk_chip) return -EINVAL; - if (enable) - nmk_chip->enabled |= bitmask; - else - nmk_chip->enabled &= ~bitmask; - clk_enable(nmk_chip->clk); spin_lock_irqsave(&nmk_gpio_slpm_lock, flags); spin_lock(&nmk_chip->lock); @@ -653,7 +647,7 @@ static int nmk_gpio_irq_set_wake(struct irq_data *d, unsigned int on) spin_lock_irqsave(&nmk_gpio_slpm_lock, flags); spin_lock(&nmk_chip->lock); - if (!(nmk_chip->enabled & bitmask)) + if (irqd_irq_disabled(d)) __nmk_gpio_set_wake(nmk_chip, gpio, on); if (on) @@ -670,7 +664,7 @@ static int nmk_gpio_irq_set_wake(struct irq_data *d, unsigned int on) static int nmk_gpio_irq_set_type(struct irq_data *d, unsigned int type) { - bool enabled; + bool enabled = !irqd_irq_disabled(d); bool wake = irqd_is_wakeup_set(d); int gpio; struct nmk_gpio_chip *nmk_chip; @@ -691,7 +685,6 @@ static int nmk_gpio_irq_set_type(struct irq_data *d, unsigned int type) clk_enable(nmk_chip->clk); spin_lock_irqsave(&nmk_chip->lock, flags); - enabled = !!(nmk_chip->enabled & bitmask); if (enabled) __nmk_gpio_irq_modify(nmk_chip, gpio, NORMAL, false);