aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-ns9xxx/board-a9m9750dev.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/mach-ns9xxx/board-a9m9750dev.c b/arch/arm/mach-ns9xxx/board-a9m9750dev.c
index 925048e7adfe..88d1f7ef78c9 100644
--- a/arch/arm/mach-ns9xxx/board-a9m9750dev.c
+++ b/arch/arm/mach-ns9xxx/board-a9m9750dev.c
@@ -70,15 +70,20 @@ static void a9m9750dev_fpga_demux_handler(unsigned int irq,
70{ 70{
71 int stat = FPGA_ISR; 71 int stat = FPGA_ISR;
72 72
73 desc->chip->mask_ack(irq);
74
73 while (stat != 0) { 75 while (stat != 0) {
74 int irqno = fls(stat) - 1; 76 int irqno = fls(stat) - 1;
77 struct irq_desc *fpgadesc;
75 78
76 stat &= ~(1 << irqno); 79 stat &= ~(1 << irqno);
77 80
78 desc = irq_desc + FPGA_IRQ(irqno); 81 fpgadesc = irq_desc + FPGA_IRQ(irqno);
79 82
80 desc_handle_irq(FPGA_IRQ(irqno), desc); 83 desc_handle_irq(FPGA_IRQ(irqno), fpgadesc);
81 } 84 }
85
86 desc->chip->unmask(irq);
82} 87}
83 88
84void __init board_a9m9750dev_init_irq(void) 89void __init board_a9m9750dev_init_irq(void)