of: irq: Fix interrupt-map entry matching
This patch fixes interrupt-map entry matching code to properly match all
specifier cells with interrupt map entries.
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Tested-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index d385bb82..786b0b4 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -199,7 +199,7 @@
/* Compare specifiers */
match = 1;
for (i = 0; i < (addrsize + intsize); i++, imaplen--)
- match = !((match_array[i] ^ *imap++) & imask[i]);
+ match &= !((match_array[i] ^ *imap++) & imask[i]);
pr_debug(" -> match=%d (imaplen=%d)\n", match, imaplen);