From: viresh kumar Date: Thu, 29 Apr 2010 11:22:52 +0000 (+0100) Subject: ARM: 6061/1: PL061 GPIO: Bug fix - setting gpio for HIGH_LEVEL interrupt is not working. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=db7e1bc479cc941c53839b18ff811c7def0c52e7;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git ARM: 6061/1: PL061 GPIO: Bug fix - setting gpio for HIGH_LEVEL interrupt is not working. In current implementation of PL061, setting type of irq to HIGH_LEVEL is not working. This patch fixes this bug. Signed-off-by: Viresh Kumar Acked-by: Baruch Siach Signed-off-by: Russell King --- diff --git a/drivers/gpio/pl061.c b/drivers/gpio/pl061.c index 2196f318114c..105701a1f05b 100644 --- a/drivers/gpio/pl061.c +++ b/drivers/gpio/pl061.c @@ -189,7 +189,7 @@ static int pl061_irq_type(unsigned irq, unsigned trigger) gpioibe &= ~(1 << offset); if (trigger & IRQ_TYPE_EDGE_RISING) gpioiev |= 1 << offset; - else + else if (trigger & IRQ_TYPE_EDGE_FALLING) gpioiev &= ~(1 << offset); } writeb(gpioibe, chip->base + GPIOIBE);