net: renesas: rswitch: Convert to for_each_available_child_of_node()
authorGeert Uytterhoeven <geert+renesas@glider.be>
Wed, 5 Feb 2025 16:12:09 +0000 (17:12 +0100)
committerJakub Kicinski <kuba@kernel.org>
Fri, 7 Feb 2025 19:58:32 +0000 (11:58 -0800)
Simplify rswitch_get_port_node() by using the
for_each_available_child_of_node() helper instead of manually ignoring
unavailable child nodes, and leaking a reference.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/54f544d573a64b96e01fd00d3481b10806f4d110.1738771798.git.geert+renesas@glider.be
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/renesas/rswitch.c

index 84d09a8973b78ee5eb854c4ddb737179f16a10e8..aba772e14555d30891dc74a5a123121dad77e92b 100644 (file)
@@ -1287,17 +1287,14 @@ static struct device_node *rswitch_get_port_node(struct rswitch_device *rdev)
        if (!ports)
                return NULL;
 
-       for_each_child_of_node(ports, port) {
+       for_each_available_child_of_node(ports, port) {
                err = of_property_read_u32(port, "reg", &index);
                if (err < 0) {
                        port = NULL;
                        goto out;
                }
-               if (index == rdev->etha->index) {
-                       if (!of_device_is_available(port))
-                               port = NULL;
+               if (index == rdev->etha->index)
                        break;
-               }
        }
 
 out: