summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2009-01-16 11:39:07 +1100
committerStephen Rothwell <sfr@canb.auug.org.au>2009-01-16 11:39:07 +1100
commit1a1ec6177009df859106faf82dfae5f96945207a (patch)
treebada21fcb644866f58cc8e62ac1eef921a0942d1
parent8a287df993c0eaf2cdef0d1e3c69576c3a0bca36 (diff)
parent1faa44855f8f1e9b2cd46e9227ad23c3301556c1 (diff)
Merge commit 'genirq/auto-genirq-next'
-rw-r--r--kernel/irq/chip.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
index c248eba98b43..61ffd0832350 100644
--- a/kernel/irq/chip.c
+++ b/kernel/irq/chip.c
@@ -293,7 +293,8 @@ static inline void mask_ack_irq(struct irq_desc *desc, int irq)
desc->chip->mask_ack(irq);
else {
desc->chip->mask(irq);
- desc->chip->ack(irq);
+ if (desc->chip->ack)
+ desc->chip->ack(irq);
}
}
@@ -478,7 +479,8 @@ handle_edge_irq(unsigned int irq, struct irq_desc *desc)
kstat_incr_irqs_this_cpu(irq, desc);
/* Start handling the irq */
- desc->chip->ack(irq);
+ if (desc->chip->ack)
+ desc->chip->ack(irq);
desc = irq_remap_to_desc(irq, desc);
/* Mark the IRQ currently in progress.*/