]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
leds: pca9532: Simplify with scoped for each OF child loop
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Fri, 16 Aug 2024 15:31:46 +0000 (17:31 +0200)
committerLee Jones <lee@kernel.org>
Thu, 22 Aug 2024 13:23:09 +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-14-1d0292802470@linaro.org
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/leds/leds-pca9532.c

index 9f3fac66a11c7f69bc1eeccdba3159ce1dffe07c..338ddada3de9d16b19f9fccd29cad94615ba9adb 100644 (file)
@@ -506,7 +506,6 @@ static struct pca9532_platform_data *
 pca9532_of_populate_pdata(struct device *dev, struct device_node *np)
 {
        struct pca9532_platform_data *pdata;
-       struct device_node *child;
        int devid, maxleds;
        int i = 0;
        const char *state;
@@ -525,7 +524,7 @@ pca9532_of_populate_pdata(struct device *dev, struct device_node *np)
        of_property_read_u8_array(np, "nxp,psc", &pdata->psc[PCA9532_PWM_ID_0],
                                  ARRAY_SIZE(pdata->psc));
 
-       for_each_available_child_of_node(np, child) {
+       for_each_available_child_of_node_scoped(np, child) {
                if (of_property_read_string(child, "label",
                                            &pdata->leds[i].name))
                        pdata->leds[i].name = child->name;
@@ -538,10 +537,8 @@ pca9532_of_populate_pdata(struct device *dev, struct device_node *np)
                        else if (!strcmp(state, "keep"))
                                pdata->leds[i].state = PCA9532_KEEP;
                }
-               if (++i >= maxleds) {
-                       of_node_put(child);
+               if (++i >= maxleds)
                        break;
-               }
        }
 
        return pdata;