aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2016-04-04 11:49:20 -0400
committerRob Herring <robh@kernel.org>2016-04-19 18:25:14 -0400
commitf623ce95a51baee6a6638f0b025efc0229a9ac0d (patch)
treea54f340319d4a3b5968263367da290c1a396b9f8 /drivers/of
parent2021bd01ffccf2728a591070008d7de5bc41306a (diff)
of: Introduce of_for_each_phandle() helper macro
With this macro any user can easily iterate over a list of phandles. The patch also converts __of_parse_phandle_with_args() to make use of the macro. The of_count_phandle_with_args() function is not converted, because the macro hides the return value of of_phandle_iterator_init(), which is needed in there. Signed-off-by: Joerg Roedel <jroedel@suse.de> Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/base.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/of/base.c b/drivers/of/base.c
index fcff2b62ec10..ea5a13d3c5a5 100644
--- a/drivers/of/base.c
+++ b/drivers/of/base.c
@@ -1543,13 +1543,8 @@ static int __of_parse_phandle_with_args(const struct device_node *np,
1543 struct of_phandle_iterator it; 1543 struct of_phandle_iterator it;
1544 int rc, cur_index = 0; 1544 int rc, cur_index = 0;
1545 1545
1546 rc = of_phandle_iterator_init(&it, np, list_name,
1547 cells_name, cell_count);
1548 if (rc)
1549 return rc;
1550
1551 /* Loop over the phandles until all the requested entry is found */ 1546 /* Loop over the phandles until all the requested entry is found */
1552 while ((rc = of_phandle_iterator_next(&it)) == 0) { 1547 of_for_each_phandle(&it, rc, np, list_name, cells_name, cell_count) {
1553 /* 1548 /*
1554 * All of the error cases bail out of the loop, so at 1549 * All of the error cases bail out of the loop, so at
1555 * this point, the parsing is successful. If the requested 1550 * this point, the parsing is successful. If the requested