summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Szyprowski2011-08-18 06:02:12 +0200
committerKukjin Kim2011-08-19 13:57:37 +0200
commit995b528ad25968472742c50fe964d44fac2b857a (patch)
tree0e0cd47b1a0765cf895e941ab4e506ab8b568b91
parentARM: S3C64XX: Fix build break in PM debug (diff)
downloadkernel-qcow2-linux-995b528ad25968472742c50fe964d44fac2b857a.tar.gz
kernel-qcow2-linux-995b528ad25968472742c50fe964d44fac2b857a.tar.xz
kernel-qcow2-linux-995b528ad25968472742c50fe964d44fac2b857a.zip
ARM: SAMSUNG: Add chained enrty/exit call to timer interrupt handler
This patch adds chained IRQ enter/exit functions to timer interrupt handler in order to function correctly on primary controllers with different methods of flow control. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
-rw-r--r--arch/arm/plat-samsung/irq-vic-timer.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/plat-samsung/irq-vic-timer.c b/arch/arm/plat-samsung/irq-vic-timer.c
index f714d060370d..51583cd30164 100644
--- a/arch/arm/plat-samsung/irq-vic-timer.c
+++ b/arch/arm/plat-samsung/irq-vic-timer.c
@@ -22,9 +22,14 @@
#include <plat/irq-vic-timer.h>
#include <plat/regs-timer.h>
+#include <asm/mach/irq.h>
+
static void s3c_irq_demux_vic_timer(unsigned int irq, struct irq_desc *desc)
{
+ struct irq_chip *chip = irq_get_chip(irq);
+ chained_irq_enter(chip, desc);
generic_handle_irq((int)desc->irq_data.handler_data);
+ chained_irq_exit(chip, desc);
}
/* We assume the IRQ_TIMER0..IRQ_TIMER4 range is continuous. */