[PATCH 1/4] cpuidle: psci: Simplify with scoped for each OF child loop
Jonathan Cameron
Jonathan.Cameron at Huawei.com
Mon Aug 19 09:11:04 PDT 2024
On Fri, 16 Aug 2024 17:09:28 +0200
Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org> wrote:
> Use scoped for_each_child_of_node_scoped() when iterating over device
> nodes to make code a bit simpler.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
Looks fine,
FWIW
Reviewed-by: Jonathan Cameron <Jonathan.Cameron at huawei.com>
If you are bored, the pr_err() at end of here seems like it should be
return dev_err_probe(pdev->dev, ret, "failed to create CPU PM domains\n");
But that's obviously completely unrelated!
> ---
> drivers/cpuidle/cpuidle-psci-domain.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/cpuidle/cpuidle-psci-domain.c b/drivers/cpuidle/cpuidle-psci-domain.c
> index ea28b73ef3fb..146f97068022 100644
> --- a/drivers/cpuidle/cpuidle-psci-domain.c
> +++ b/drivers/cpuidle/cpuidle-psci-domain.c
> @@ -142,7 +142,6 @@ static const struct of_device_id psci_of_match[] = {
> static int psci_cpuidle_domain_probe(struct platform_device *pdev)
> {
> struct device_node *np = pdev->dev.of_node;
> - struct device_node *node;
> bool use_osi = psci_has_osi_support();
> int ret = 0, pd_count = 0;
>
> @@ -153,15 +152,13 @@ static int psci_cpuidle_domain_probe(struct platform_device *pdev)
> * Parse child nodes for the "#power-domain-cells" property and
> * initialize a genpd/genpd-of-provider pair when it's found.
> */
> - for_each_child_of_node(np, node) {
> + for_each_child_of_node_scoped(np, node) {
> if (!of_property_present(node, "#power-domain-cells"))
> continue;
>
> ret = psci_pd_init(node, use_osi);
> - if (ret) {
> - of_node_put(node);
> + if (ret)
> goto exit;
> - }
>
> pd_count++;
> }
More information about the linux-riscv
mailing list