]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
gpio: fix aspeed_gpio unmask irq
authorGovert Overgaauw <govert.overgaauw@prodrive-technologies.com>
Fri, 6 Apr 2018 12:41:35 +0000 (14:41 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 May 2018 08:10:26 +0000 (10:10 +0200)
commit f241632fd087d3d9fbd5450f4d8c8604badd8348 upstream.

The unmask function disables all interrupts in a bank when unmasking an
interrupt. Only disable the given interrupt.

Cc: stable@vger.kernel.org
Signed-off-by: Govert Overgaauw <govert.overgaauw@prodrive-technologies.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpio/gpio-aspeed.c

index bfc53995064af76cdb7866acead0c0a9b8df1972..f03fe916eb9d0c38c575d31ab5e96ec88620106f 100644 (file)
@@ -375,7 +375,7 @@ static void aspeed_gpio_irq_set_mask(struct irq_data *d, bool set)
        if (set)
                reg |= bit;
        else
-               reg &= bit;
+               reg &= ~bit;
        iowrite32(reg, addr);
 
        spin_unlock_irqrestore(&gpio->lock, flags);