CHROMIUM: ARM: exynos: no duplicate mask/unmask in eint0_15
authorDaniel Kurtz <djkurtz@chromium.org>
Wed, 5 Sep 2012 08:16:51 +0000 (16:16 +0800)
committerGerrit <chrome-bot@google.com>
Mon, 24 Sep 2012 01:41:46 +0000 (18:41 -0700)
chained_irq_enter/exit() already mask&ack/unmask the chained interrupt.
There is no need to also explicitly do it in the handler.

Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
BUG=chrome-os-partner:13488
TEST=Manually verify.
TEST=ftrace shows only one call to
     combiner_{mask,unmask}_irq per call to exynos_irq_eint0_15

Change-Id: Id978cb4574af3ef1c6adccb1453ad2c51049e08b
Reviewed-on: https://gerrit.chromium.org/gerrit/32215
Reviewed-by: Doug Anderson <dianders@chromium.org>
Commit-Ready: Daniel Kurtz <djkurtz@chromium.org>
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
Tested-by: Daniel Kurtz <djkurtz@chromium.org>
arch/arm/mach-exynos/common.c

index a2383e6..99dcc93 100644 (file)
@@ -1088,15 +1088,8 @@ static void exynos_irq_eint0_15(unsigned int irq, struct irq_desc *desc)
        int eint_irq;
 
        chained_irq_enter(chip, desc);
-       chip->irq_mask(&desc->irq_data);
-
-       if (chip->irq_ack)
-               chip->irq_ack(&desc->irq_data);
-
        eint_irq = irq_find_mapping(irq_domain, *irq_data);
        generic_handle_irq(eint_irq);
-
-       chip->irq_unmask(&desc->irq_data);
        chained_irq_exit(chip, desc);
 }