From: Krzysztof Kozlowski Date: Wed, 31 Dec 2025 12:09:27 +0000 (+0100) Subject: of/platform: Simplify with scoped for each OF child loop X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=16f47ecae157a62490c68e2697462cc13c247d25;p=thirdparty%2Fkernel%2Flinux.git of/platform: Simplify with scoped for each OF child loop Use scoped for-each loop when iterating over device nodes to make code a bit simpler. Signed-off-by: Krzysztof Kozlowski Link: https://patch.msgid.link/20251231120926.66185-2-krzysztof.kozlowski@oss.qualcomm.com Signed-off-by: Rob Herring (Arm) --- diff --git a/drivers/of/platform.c b/drivers/of/platform.c index f77cb19973a5..d4e169b3b5af 100644 --- a/drivers/of/platform.c +++ b/drivers/of/platform.c @@ -394,7 +394,6 @@ int of_platform_bus_probe(struct device_node *root, const struct of_device_id *matches, struct device *parent) { - struct device_node *child; int rc = 0; root = root ? of_node_get(root) : of_find_node_by_path("/"); @@ -407,13 +406,13 @@ int of_platform_bus_probe(struct device_node *root, /* Do a self check of bus type, if there's a match, create children */ if (of_match_node(matches, root)) { rc = of_platform_bus_create(root, matches, NULL, parent, false); - } else for_each_child_of_node(root, child) { - if (!of_match_node(matches, child)) - continue; - rc = of_platform_bus_create(child, matches, NULL, parent, false); - if (rc) { - of_node_put(child); - break; + } else { + for_each_child_of_node_scoped(root, child) { + if (!of_match_node(matches, child)) + continue; + rc = of_platform_bus_create(child, matches, NULL, parent, false); + if (rc) + break; } }