In commit a71b092a9c68685a270ebdde7b5986ba8787e575 __handle_domain_irq was introduced by Marc Zyngier. It tests hwirq on zero and rejects it. At least LPC32XX uses IRQ 0 as chained entry for SIC1. Thus all SIC1 connected devices doesn't work just now. This patch fixes it - not sure whether it is correct way however. --- kernel/irq/irqdesc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c index 99793b9..3c90794 100644 --- a/kernel/irq/irqdesc.c +++ b/kernel/irq/irqdesc.c @@ -381,7 +381,7 @@ int __handle_domain_irq(struct irq_domain *domain, unsigned int hwirq, * Some hardware gives randomly wrong interrupts. Rather * than crashing, do something sensible. */ - if (unlikely(!irq || irq >= nr_irqs)) { + if (unlikely(irq >= nr_irqs)) { ack_bad_irq(irq); ret = -EINVAL; } else { -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/