summaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2013-10-11 23:05:10 +0200
committerGrant Likely <grant.likely@linaro.org>2013-10-24 12:43:13 +0200
commit624cfca534f9b1ffb1326617b4e973a3d5ecff4a (patch)
treeff8d3861219a84bea05967bbf80ac726355445d4 /drivers/of
parentof/irq: Refactor interrupt-map parsing (diff)
downloadlinux-624cfca534f9b1ffb1326617b4e973a3d5ecff4a.tar.xz
linux-624cfca534f9b1ffb1326617b4e973a3d5ecff4a.zip
of: Add helper for printing an of_phandle_args structure
It is sometimes useful for debug to get the contents of an of_phandle_args structure out into the kernel log. Signed-off-by: Grant Likely <grant.likely@linaro.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/base.c9
-rw-r--r--drivers/of/irq.c6
2 files changed, 12 insertions, 3 deletions
diff --git a/drivers/of/base.c b/drivers/of/base.c
index 3ae106d89791..021db96245e7 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -1185,6 +1185,15 @@ int of_property_count_strings(struct device_node *np, const char *propname)
}
EXPORT_SYMBOL_GPL(of_property_count_strings);
+void of_print_phandle_args(const char *msg, const struct of_phandle_args *args)
+{
+ int i;
+ printk("%s %s", msg, of_node_full_name(args->np));
+ for (i = 0; i < args->args_count; i++)
+ printk(i ? ",%08x" : ":%08x", args->args[i]);
+ printk("\n");
+}
+
static int __of_parse_phandle_with_args(const struct device_node *np,
const char *list_name,
const char *cells_name,
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index 0ed5ed4a5f9b..ddea945ec29e 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -101,9 +101,9 @@ int of_irq_parse_raw(const __be32 *addr, struct of_phandle_args *out_irq)
u32 intsize = 1, addrsize, newintsize = 0, newaddrsize = 0;
int imaplen, match, i;
- pr_debug("of_irq_parse_raw: par=%s,intspec=[0x%08x 0x%08x...],ointsize=%d\n",
- of_node_full_name(out_irq->np), out_irq->args[0], out_irq->args[1],
- out_irq->args_count);
+#ifdef DEBUG
+ of_print_phandle_args("of_irq_parse_raw: ", out_irq);
+#endif
ipar = of_node_get(out_irq->np);