]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
regulator: scmi: Simplify with scoped for each OF child loop
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Wed, 14 Aug 2024 15:04:11 +0000 (17:04 +0200)
committerMark Brown <broonie@kernel.org>
Wed, 14 Aug 2024 17:21:48 +0000 (18:21 +0100)
Use scoped for_each_available_child_of_node_scoped() when iterating over
device nodes to make code a bit simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://patch.msgid.link/20240814-cleanup-h-of-node-put-regulator-v1-7-87151088b883@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/scmi-regulator.c

index 29ab217297d6ddfdc837919e9841e0ffdb23dda5..9df726f10ad121ffa79bb05aefc4f61f04f15e8a 100644 (file)
@@ -297,7 +297,7 @@ static int process_scmi_regulator_of_node(struct scmi_device *sdev,
 static int scmi_regulator_probe(struct scmi_device *sdev)
 {
        int d, ret, num_doms;
-       struct device_node *np, *child;
+       struct device_node *np;
        const struct scmi_handle *handle = sdev->handle;
        struct scmi_regulator_info *rinfo;
        struct scmi_protocol_handle *ph;
@@ -341,13 +341,11 @@ static int scmi_regulator_probe(struct scmi_device *sdev)
         */
        of_node_get(handle->dev->of_node);
        np = of_find_node_by_name(handle->dev->of_node, "regulators");
-       for_each_child_of_node(np, child) {
+       for_each_child_of_node_scoped(np, child) {
                ret = process_scmi_regulator_of_node(sdev, ph, child, rinfo);
                /* abort on any mem issue */
-               if (ret == -ENOMEM) {
-                       of_node_put(child);
+               if (ret == -ENOMEM)
                        return ret;
-               }
        }
        of_node_put(np);
        /*