]> www.infradead.org Git - users/willy/xarray.git/commitdiff
of: resolver: Simplify with scoped for each OF child loop
authorJinjie Ruan <ruanjinjie@huawei.com>
Mon, 26 Aug 2024 06:24:08 +0000 (14:24 +0800)
committerRob Herring (Arm) <robh@kernel.org>
Mon, 26 Aug 2024 15:50:46 +0000 (10:50 -0500)
Use scoped for_each_child_of_node_scoped() when iterating over device
nodes to make code a bit simpler.

Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Link: https://lore.kernel.org/r/20240826062408.2406734-4-ruanjinjie@huawei.com
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
drivers/of/resolver.c

index 2780928764a4f10a9a8c2ead6072c2f88844d165..5cf96776dd7d3154e0c4a2c9ea108adf5f57ec5a 100644 (file)
@@ -150,7 +150,7 @@ static int node_name_cmp(const struct device_node *dn1,
 static int adjust_local_phandle_references(struct device_node *local_fixups,
                struct device_node *overlay, int phandle_delta)
 {
-       struct device_node *child, *overlay_child;
+       struct device_node *overlay_child;
        struct property *prop_fix, *prop;
        int err, i, count;
        unsigned int off;
@@ -194,7 +194,7 @@ static int adjust_local_phandle_references(struct device_node *local_fixups,
         * The roots of the subtrees are the overlay's __local_fixups__ node
         * and the overlay's root node.
         */
-       for_each_child_of_node(local_fixups, child) {
+       for_each_child_of_node_scoped(local_fixups, child) {
 
                for_each_child_of_node(overlay, overlay_child)
                        if (!node_name_cmp(child, overlay_child)) {
@@ -202,17 +202,13 @@ static int adjust_local_phandle_references(struct device_node *local_fixups,
                                break;
                        }
 
-               if (!overlay_child) {
-                       of_node_put(child);
+               if (!overlay_child)
                        return -EINVAL;
-               }
 
                err = adjust_local_phandle_references(child, overlay_child,
                                phandle_delta);
-               if (err) {
-                       of_node_put(child);
+               if (err)
                        return err;
-               }
        }
 
        return 0;