From: Tomasz Figa <t.figa@samsung.com>
To: Olof Johansson <olof@lixom.net>
Cc: Grant Likely <grant.likely@linaro.org>,
devicetree@vger.kernel.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Kevin Hilman <khilman@linaro.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Subject: [PATCH 2/2] of: irq: Check for reg property presence only when parsing interrupt-map
Date: Tue, 05 Nov 2013 16:21:36 +0100 [thread overview]
Message-ID: <11085147.qYFvaZYATK@amdc1227> (raw)
In-Reply-To: <2177804.l4VGDTRFDu@amdc1227>
This patch fixes the of_irq_parse_raw() function to check for reg
property only when really parsing interrupt map property, as it is not
required otherwise and breaks existing device trees.
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
---
drivers/of/irq.c | 21 +++++++++++----------
1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index 717eed4..72e9c51 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -147,17 +147,8 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq)
pr_debug(" -> addrsize=%d\n", addrsize);
- /* If we were passed no "reg" property and we attempt to parse
- * an interrupt-map, then #address-cells must be 0.
- * Fail if it's not.
- */
- if (addr == NULL && addrsize != 0) {
- pr_debug(" -> no reg passed in when needed !\n");
- return -EINVAL;
- }
-
/* Precalculate the match array - this simplifies match loop */
- for (i = 0; i < addrsize; i++)
+ for (i = 0; i < addrsize && addr; i++)
initial_match_array[i] = addr[i];
for (i = 0; i < intsize; i++)
initial_match_array[addrsize + i] = cpu_to_be32(out_irq->args[i]);
@@ -184,6 +175,16 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq)
}
imaplen /= sizeof(u32);
+ /*
+ * If we were passed no "reg" property and we attempt to parse
+ * an interrupt-map, then #address-cells must be 0.
+ * Fail if it's not.
+ */
+ if (addr == NULL && addrsize != 0) {
+ pr_debug(" -> no reg passed in when needed !\n");
+ return -EINVAL;
+ }
+
/* Look for a mask */
imask = of_get_property(ipar, "interrupt-map-mask", NULL);
if (!imask)
--
1.8.4.2
next prev parent reply other threads:[~2013-11-05 15:21 UTC|newest]
Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-15 20:39 [RFC 0/9] of: refactor IRQ parsing and add interrupts-extended implementation Grant Likely
2013-10-15 20:39 ` [RFC 1/9] of/irq: Rename of_irq_map_* functions to of_irq_parse_* Grant Likely
2013-10-16 10:47 ` Michal Simek
2013-10-15 20:39 ` [RFC 2/9] of/irq: Replace of_irq with of_phandle_args Grant Likely
2013-10-15 20:39 ` [RFC 4/9] of/irq: Refactor interrupt-map parsing Grant Likely
2013-10-29 16:23 ` Olof Johansson
2013-10-31 1:19 ` Ming Lei
[not found] ` <CACxGe6uE+KvycQq3XBavRcvprff6PhBaxX54W_Cb1cfuVpMXvQ@mail.gmail.com>
2013-10-31 18:57 ` Olof Johansson
2013-11-01 14:48 ` Grant Likely
2013-11-01 17:53 ` Grant Likely
[not found] ` <20131101175317.A812AC40868-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-11-01 18:54 ` Grant Likely
2013-11-01 18:54 ` Grant Likely
2013-11-02 4:16 ` Ming Lei
[not found] ` <20131101185401.B298FC40868-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-11-04 5:04 ` Olof Johansson
2013-11-04 5:04 ` Olof Johansson
2013-11-05 15:18 ` Tomasz Figa
2013-11-05 15:21 ` [PATCH 1/2] of: irq: Fix interrupt-map entry matching Tomasz Figa
2013-11-05 15:21 ` Tomasz Figa
2013-11-07 11:32 ` Tomasz Figa
2013-11-07 11:32 ` Tomasz Figa
2013-11-07 16:40 ` Rob Herring
2013-11-07 16:40 ` Rob Herring
[not found] ` <CAL_JsqKUaioiz2dw3Sr8f7UfqzjagWH_je2-u_QGYXRK5g1=yg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-07 22:11 ` Tomasz Figa
2013-11-07 22:11 ` Tomasz Figa
2013-11-08 9:37 ` Grant Likely
2013-11-07 11:50 ` Sachin Kamat
2013-11-07 11:50 ` Sachin Kamat
2013-11-05 15:21 ` Tomasz Figa [this message]
2013-11-07 11:33 ` [PATCH 2/2] of: irq: Check for reg property presence only when parsing interrupt-map Tomasz Figa
2013-11-01 19:07 ` [RFC 4/9] of/irq: Refactor interrupt-map parsing Stephen Warren
2013-11-01 19:07 ` Stephen Warren
2013-10-31 20:45 ` [RFC 4/9] of/irq: Refactor interrupt-map parsing [CPU hotplug clockevents issue] Stephen Warren
2013-10-15 20:39 ` [RFC 5/9] of: Add helper for printing an of_phandle_args structure Grant Likely
2013-10-15 20:39 ` [RFC 7/9] of/irq: Create of_irq_parse_and_map_pci() to consolidate arch code Grant Likely
2013-10-15 20:39 ` [RFC 8/9] microblaze/pci: Drop PowerPC-ism from irq parsing Grant Likely
[not found] ` <1381869563-16083-1-git-send-email-grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-10-15 20:39 ` [RFC 3/9] of/irq: simplify args to irq_create_of_mapping Grant Likely
2013-10-15 20:39 ` Grant Likely
2013-10-15 20:39 ` [RFC 6/9] of: Add testcases for interrupt parsing Grant Likely
2013-10-15 20:39 ` Grant Likely
2013-10-15 20:39 ` [RFC 9/9] of/irq: create interrupts-extended property Grant Likely
2013-10-15 20:39 ` Grant Likely
2013-10-17 17:33 ` Tony Lindgren
2013-10-27 13:46 ` Grant Likely
2013-10-27 20:24 ` Rob Herring
2013-10-28 3:16 ` Mark Rutland
2013-10-28 6:54 ` Kumar Gala
2013-10-28 6:54 ` Kumar Gala
[not found] ` <20131027134607.E1782C4039D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-10-28 21:47 ` Stephen Warren
2013-10-28 21:47 ` Stephen Warren
2013-10-28 22:49 ` Mark Rutland
2013-10-28 23:16 ` Benjamin Herrenschmidt
[not found] ` <1381869563-16083-10-git-send-email-grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-10-28 6:54 ` Kumar Gala
2013-10-28 6:54 ` Kumar Gala
[not found] ` <31D756E7-A7CD-42ED-8D1D-D1B38B85E3A0-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2013-10-28 23:41 ` Grant Likely
2013-10-28 23:41 ` Grant Likely
2013-11-11 22:58 ` Peter Crosthwaite
2013-11-11 22:58 ` Peter Crosthwaite
[not found] ` <CAEgOgz6=HhBkb2KtxcmHpNdE_0sNngw0NaL2SnLWj1opZkO3SA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-12 6:54 ` Grant Likely
2013-11-12 6:54 ` Grant Likely
[not found] ` <20131112065405.C75E8C42024-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-11-12 7:49 ` Peter Crosthwaite
2013-11-12 7:49 ` Peter Crosthwaite
[not found] ` <CAEgOgz6j8YsvFgq8ZbE20ocHPA0C-eUGBb7F1gNiVBvJXLa8_g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-12 8:50 ` Grant Likely
2013-11-12 8:50 ` Grant Likely
[not found] ` <20131112085038.B6A75C421BB-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-11-12 23:17 ` Peter Crosthwaite
2013-11-12 23:17 ` Peter Crosthwaite
2013-11-13 6:14 ` Grant Likely
2013-11-24 7:04 ` Peter Crosthwaite
2013-10-17 17:30 ` [RFC 0/9] of: refactor IRQ parsing and add interrupts-extended implementation Tony Lindgren
2013-10-17 17:30 ` Tony Lindgren
[not found] ` < 1381869563-16083-10-git-send-email-grant.likely@linaro.org>
[not found] ` < CAEgOgz6=HhBkb2KtxcmHpNdE_0sNngw0NaL2SnLWj1opZkO3SA@mail.gmail.com>
[not found] ` < 20131112065405.C75E8C42024@trevor.secretlab.ca>
[not found] ` < CAEgOgz6j8YsvFgq8ZbE20ocHPA0C-eUGBb7F1gNiVBvJXLa8_g@mail.gmail.com>
[not found] ` < 20131112085038.B6A75C421BB@trevor.secretlab.ca>
[not found] ` < CAEgOgz4dM1zQdFpOkUwZqAUMUBe2eh3j1Ah0KgomVAOGgrPsVw@mail.gmail.com>
[not found] ` < 20131113061425.667F9C41807@trevor.secretlab.ca>
[not found] ` < CAEgOgz5BWzo-LGddjG6ZUtKt6GHxLmDUEndFOdVrn+1HTPvpGQ@mail.gmail.com>
[not found] ` <CAEgOgz5BWzo-LGddjG6ZUtKt6GHxLmDUEndFOdVrn+1HTPvpGQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-24 21:32 ` [RFC 9/9] of/irq: create interrupts-extended property Grant Likely
2013-11-24 21:32 ` Grant Likely
[not found] ` <20131124213212.226B8C402C3-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2013-11-27 9:06 ` Peter Crosthwaite
2013-11-27 9:06 ` Peter Crosthwaite
[not found] ` < 20131124213212.226B8C402C3@trevor.secretlab.ca>
[not found] ` < CAEgOgz4yhDzy_BFiotK5Qi48sczR3PL1oPjPhNYC9O94P6AnzQ@mail.gmail.com>
[not found] ` <CAEgOgz4yhDzy_BFiotK5Qi48sczR3PL1oPjPhNYC9O94P6AnzQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-27 14:17 ` Grant Likely
2013-11-27 14:17 ` Grant Likely
2013-11-28 7:28 ` Peter Crosthwaite
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=11085147.qYFvaZYATK@amdc1227 \
--to=t.figa@samsung.com \
--cc=benh@kernel.crashing.org \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=khilman@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=olof@lixom.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.