Commit f3b3c47c authored by Jinjie Ruan's avatar Jinjie Ruan Committed by Miquel Raynal
Browse files

mtd: rawnand: renesas: Use for_each_child_of_node_scoped()



Avoids the need for manual cleanup of_node_put() in early exits
from the loop.

Signed-off-by: default avatarJinjie Ruan <ruanjinjie@huawei.com>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20240826094328.2991664-9-ruanjinjie@huawei.com
parent 87959526
Loading
Loading
Loading
Loading
+3 −9
Original line number Diff line number Diff line
@@ -1297,23 +1297,17 @@ static void rnandc_chips_cleanup(struct rnandc *rnandc)

static int rnandc_chips_init(struct rnandc *rnandc)
{
	struct device_node *np;
	int ret;

	for_each_child_of_node(rnandc->dev->of_node, np) {
	for_each_child_of_node_scoped(rnandc->dev->of_node, np) {
		ret = rnandc_chip_init(rnandc, np);
		if (ret) {
			of_node_put(np);
			goto cleanup_chips;
			rnandc_chips_cleanup(rnandc);
			return ret;
		}
	}

	return 0;

cleanup_chips:
	rnandc_chips_cleanup(rnandc);

	return ret;
}

static int rnandc_probe(struct platform_device *pdev)