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/

Reply via email to