On 14/08/2024 18:45, Jonathan Cameron wrote: > On Mon, 12 Aug 2024 15:33:58 +0200 > Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> wrote: > >> 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@xxxxxxxxxx> > Might be worth using dev_err_probe() in here. Otherwise LGTM > Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > >> --- >> drivers/memory/stm32-fmc2-ebi.c | 8 +------- >> 1 file changed, 1 insertion(+), 7 deletions(-) >> >> diff --git a/drivers/memory/stm32-fmc2-ebi.c b/drivers/memory/stm32-fmc2-ebi.c >> index 1c63eeacd071..7167e1da56d3 100644 >> --- a/drivers/memory/stm32-fmc2-ebi.c >> +++ b/drivers/memory/stm32-fmc2-ebi.c >> @@ -1573,29 +1573,25 @@ static int stm32_fmc2_ebi_setup_cs(struct stm32_fmc2_ebi *ebi, >> static int stm32_fmc2_ebi_parse_dt(struct stm32_fmc2_ebi *ebi) >> { >> struct device *dev = ebi->dev; >> - struct device_node *child; >> bool child_found = false; >> u32 bank; >> int ret; >> >> - for_each_available_child_of_node(dev->of_node, child) { >> + for_each_available_child_of_node_scoped(dev->of_node, child) { >> ret = of_property_read_u32(child, "reg", &bank); >> if (ret) { >> dev_err(dev, "could not retrieve reg property: %d\n", >> ret); >> - of_node_put(child); >> return ret; > return dev_err_probe(dev, "could not retrieve reg property\n"); > perhaps? New patch for that... but just mind that deferred probe cannot happen here, so only part of dev_err_probe() benefits would be used. Best regards, Krzysztof