]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
leds: aw2013: Simplify with scoped for each OF child loop
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Fri, 16 Aug 2024 15:31:38 +0000 (17:31 +0200)
committerLee Jones <lee@kernel.org>
Thu, 22 Aug 2024 13:23:03 +0000 (14:23 +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://lore.kernel.org/r/20240816-cleanup-h-of-node-put-var-v1-6-1d0292802470@linaro.org
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/leds/leds-aw2013.c

index 6475eadcb0df94c433823dd4d2e671057e3c515e..216755d6010fedd4bcf44519a6ef3da1982d85f8 100644 (file)
@@ -263,7 +263,7 @@ out:
 
 static int aw2013_probe_dt(struct aw2013 *chip)
 {
-       struct device_node *np = dev_of_node(&chip->client->dev), *child;
+       struct device_node *np = dev_of_node(&chip->client->dev);
        int count, ret = 0, i = 0;
        struct aw2013_led *led;
 
@@ -273,7 +273,7 @@ static int aw2013_probe_dt(struct aw2013 *chip)
 
        regmap_write(chip->regmap, AW2013_RSTR, AW2013_RSTR_RESET);
 
-       for_each_available_child_of_node(np, child) {
+       for_each_available_child_of_node_scoped(np, child) {
                struct led_init_data init_data = {};
                u32 source;
                u32 imax;
@@ -304,10 +304,8 @@ static int aw2013_probe_dt(struct aw2013 *chip)
 
                ret = devm_led_classdev_register_ext(&chip->client->dev,
                                                     &led->cdev, &init_data);
-               if (ret < 0) {
-                       of_node_put(child);
+               if (ret < 0)
                        return ret;
-               }
 
                i++;
        }