]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mtd: rawnand: stm32_fmc2: Use for_each_child_of_node_scoped()
authorJinjie Ruan <ruanjinjie@huawei.com>
Mon, 26 Aug 2024 09:43:27 +0000 (17:43 +0800)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Fri, 6 Sep 2024 14:59:56 +0000 (16:59 +0200)
Avoids the need for manual cleanup of_node_put() in early exits
from the loop.

Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20240826094328.2991664-10-ruanjinjie@huawei.com
drivers/mtd/nand/raw/stm32_fmc2_nand.c

index 264556939a00f0a66a09ef708b4da70ba8736bfb..0f67e96cc24020e10a11903841e3aceb3daba61d 100644 (file)
@@ -1851,7 +1851,6 @@ static int stm32_fmc2_nfc_parse_child(struct stm32_fmc2_nfc *nfc,
 static int stm32_fmc2_nfc_parse_dt(struct stm32_fmc2_nfc *nfc)
 {
        struct device_node *dn = nfc->dev->of_node;
-       struct device_node *child;
        int nchips = of_get_child_count(dn);
        int ret = 0;
 
@@ -1865,12 +1864,10 @@ static int stm32_fmc2_nfc_parse_dt(struct stm32_fmc2_nfc *nfc)
                return -EINVAL;
        }
 
-       for_each_child_of_node(dn, child) {
+       for_each_child_of_node_scoped(dn, child) {
                ret = stm32_fmc2_nfc_parse_child(nfc, child);
-               if (ret < 0) {
-                       of_node_put(child);
+               if (ret < 0)
                        return ret;
-               }
        }
 
        return ret;