summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Brown <broonie@sirena.org.uk>2009-02-24 14:55:48 (GMT)
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-02-24 19:12:31 (GMT)
commitc8532db7f2661b63f658b9a08cf4053a3e6abb78 (patch)
tree70aa1f40c8319ed3db954480fabe74e52311fbbb
parentd82ad6d6833ee8248e6c34e1b9fc3c4e61e3f035 (diff)
downloadlinux-c8532db7f2661b63f658b9a08cf4053a3e6abb78.tar.xz
[ARM] 5411/1: S3C64XX: Fix EINT unmask
Currently the unmask function for EINT interrupts was setting the mask bit rather than clearing it. This was also previously reported and fixed by Kyungmin Park <kyungmin.park@samsung.com> and others. Acked-By: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/plat-s3c64xx/irq-eint.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/plat-s3c64xx/irq-eint.c b/arch/arm/plat-s3c64xx/irq-eint.c
index 1f7cc00..ebb305c 100644
--- a/arch/arm/plat-s3c64xx/irq-eint.c
+++ b/arch/arm/plat-s3c64xx/irq-eint.c
@@ -55,7 +55,7 @@ static void s3c_irq_eint_unmask(unsigned int irq)
u32 mask;
mask = __raw_readl(S3C64XX_EINT0MASK);
- mask |= eint_irq_to_bit(irq);
+ mask &= ~eint_irq_to_bit(irq);
__raw_writel(mask, S3C64XX_EINT0MASK);
}