diff options
author | Rob Herring <robh@kernel.org> | 2018-08-27 08:38:08 -0500 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2018-09-04 09:59:45 -0500 |
commit | b610e2ff4622794f4472b7b0e899b3320671d909 (patch) | |
tree | 0d26c581ca954c083d25554cc09b413b4d3d7cc1 /drivers/of/unittest.c | |
parent | 57361846b52bc686112da6ca5368d11210796804 (diff) | |
download | linux-stable-b610e2ff4622794f4472b7b0e899b3320671d909.tar.gz linux-stable-b610e2ff4622794f4472b7b0e899b3320671d909.tar.bz2 linux-stable-b610e2ff4622794f4472b7b0e899b3320671d909.zip |
of/unittest: remove use of node name pointer in overlay high level test
In preparation for removing the node name pointer, it needs to be
removed from of_unittest_overlay_high_level. However, it's not really
correct to use the node name without the unit-address and we should use
the full node name. This most easily done by iterating over the child
nodes with for_each_child_of_node() which is what of_get_child_by_name()
does internally. While at it, we might as well convert the outer loop to
use for_each_child_of_node() too instead of open coding it.
Reviewed-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'drivers/of/unittest.c')
-rw-r--r-- | drivers/of/unittest.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c index 722537e14848..7d0073b640bd 100644 --- a/drivers/of/unittest.c +++ b/drivers/of/unittest.c @@ -2347,11 +2347,14 @@ static __init void of_unittest_overlay_high_level(void) } } - for (np = overlay_base_root->child; np; np = np->sibling) { - if (of_get_child_by_name(of_root, np->name)) { - unittest(0, "illegal node name in overlay_base %s", - np->name); - return; + for_each_child_of_node(overlay_base_root, np) { + struct device_node *base_child; + for_each_child_of_node(of_root, base_child) { + if (!strcmp(np->full_name, base_child->full_name)) { + unittest(0, "illegal node name in overlay_base %pOFn", + np); + return; + } } } |