Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1230698

[PATCH 4/4] irqchip/gic-v3-its: Parse new version of msi-parent property

From Marc Zyngier <marc.zyngier@arm.com>
Newsgroups linux.kernel
Subject [PATCH 4/4] irqchip/gic-v3-its: Parse new version of msi-parent property
Date 2015-09-22 20:40 +0200
Message-ID <qbADT-561-9@gated-at.bofh.it> (permalink)
References <qbA1d-46k-29@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Now that 126b16e2ad98 ("Docs: dt: add generic MSI bindings")
has made it into the tree, the time has come to get rid of the
old hack, and to parse msi-parent in its full glory.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
---
 drivers/irqchip/irq-gic-v3-its-platform-msi.c | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/drivers/irqchip/irq-gic-v3-its-platform-msi.c b/drivers/irqchip/irq-gic-v3-its-platform-msi.c
index a865505..5a58a53 100644
--- a/drivers/irqchip/irq-gic-v3-its-platform-msi.c
+++ b/drivers/irqchip/irq-gic-v3-its-platform-msi.c
@@ -29,13 +29,25 @@ static int its_pmsi_prepare(struct irq_domain *domain, struct device *dev,
 {
 	struct msi_domain_info *msi_info;
 	u32 dev_id;
-	int ret;
+	int ret, index = 0;
 
 	msi_info = msi_get_domain_info(domain->parent);
 
 	/* Suck the DeviceID out of the msi-parent property */
-	ret = of_property_read_u32_index(dev->of_node, "msi-parent",
-					 1, &dev_id);
+	do {
+		struct of_phandle_args args;
+
+		ret = of_parse_phandle_with_opt_args(dev->of_node,
+						     "msi-parent", "#msi-cells",
+						     index, &args);
+		if (args.np == domain->of_node) {
+			if (WARN_ON(args.args_count != 1))
+				return -EINVAL;
+			dev_id = args.args[0];
+			break;
+		}
+	} while (!ret);
+
 	if (ret)
 		return ret;
 
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/4] of: Handle multi-parent version of msi-parent Marc Zyngier <marc.zyngier@arm.com> - 2015-09-22 20:00 +0200
  [PATCH 4/4] irqchip/gic-v3-its: Parse new version of msi-parent property Marc Zyngier <marc.zyngier@arm.com> - 2015-09-22 20:40 +0200
  [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper function Marc Zyngier <marc.zyngier@arm.com> - 2015-09-22 20:40 +0200
    Re: [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper function Rob Herring <robh@kernel.org> - 2015-09-29 19:30 +0200
      Re: [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper function Marc Zyngier <marc.zyngier@arm.com> - 2015-09-30 11:10 +0200
      Re: [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper  function Mark Rutland <mark.rutland@arm.com> - 2015-09-30 16:00 +0200
    Re: [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper  function Robin Murphy <robin.murphy@arm.com> - 2015-09-30 17:40 +0200
      Re: [PATCH 1/4] of: Add of_parse_phandle_with_opt_args() helper function Marc Zyngier <marc.zyngier@arm.com> - 2015-09-30 19:20 +0200
  [PATCH 2/4] of: irq: Add support for the new definition of "msi-parent" Marc Zyngier <marc.zyngier@arm.com> - 2015-09-22 20:40 +0200
    Re: [PATCH 2/4] of: irq: Add support for the new definition of  "msi-parent" Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2015-09-23 16:40 +0200
      Re: [PATCH 2/4] of: irq: Add support for the new definition of  "msi-parent" Thomas Gleixner <tglx@linutronix.de> - 2015-09-27 12:40 +0200
        Re: [PATCH 2/4] of: irq: Add support for the new definition of  "msi-parent" Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2015-09-27 15:10 +0200

csiph-web