Re: [PATCH] soc: dove: pmu: Simplify with scoped for each OF child loop
From: Gregory CLEMENT <gregory.clement@bootlin.com>
Date: 2026-01-05 14:04:15
Also in:
lkml
Krzysztof Kozlowski [off-list ref] writes:
Use scoped for-each loop when iterating over device nodes to make code a bit simpler. Signed-off-by: Krzysztof Kozlowski <redacted>
Applied on mvebu/arm Thanks, Gregory
quoted hunk ↗ jump to hunk
--- drivers/soc/dove/pmu.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)diff --git a/drivers/soc/dove/pmu.c b/drivers/soc/dove/pmu.c index 7bbd3f940e4d..dd8ade8e9ee8 100644 --- a/drivers/soc/dove/pmu.c +++ b/drivers/soc/dove/pmu.c@@ -371,7 +371,7 @@ int __init dove_init_pmu_legacy(const struct dove_pmu_initdata *initdata) */ int __init dove_init_pmu(void) { - struct device_node *np_pmu, *domains_node, *np; + struct device_node *np_pmu, *domains_node; struct pmu_data *pmu; int ret, parent_irq;@@ -404,21 +404,18 @@ int __init dove_init_pmu(void) pmu_reset_init(pmu); - for_each_available_child_of_node(domains_node, np) { + for_each_available_child_of_node_scoped(domains_node, np) { struct of_phandle_args args; struct pmu_domain *domain; domain = kzalloc(sizeof(*domain), GFP_KERNEL); - if (!domain) { - of_node_put(np); + if (!domain) break; - } domain->pmu = pmu; domain->base.name = kasprintf(GFP_KERNEL, "%pOFn", np); if (!domain->base.name) { kfree(domain); - of_node_put(np); break; }-- 2.51.0
-- Grégory CLEMENT, Bootlin Embedded Linux and Kernel engineering https://bootlin.com