On Thu, Nov 13, 2025 at 05:04:25PM +0530, Aswin Murugan wrote:
> Update dev_power_domain_ctrl() to log a warning if the power-domain
> driver is not found (-ENODEV). Return 0 in this case to allow continued
> execution, while preserving error handling for other failures.
>
> Signed-off-by: Aswin Murugan <[email protected]>
> ---
> Changes in v6:
> - Newly added the change in drivers/power/domain/power-domain-uclass.c to 
> give warning
>   when power-domain driver is missing
> ---
>  drivers/power/domain/power-domain-uclass.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/drivers/power/domain/power-domain-uclass.c 
> b/drivers/power/domain/power-domain-uclass.c
> index d9fa8ad4bd2..b5d9b08b150 100644
> --- a/drivers/power/domain/power-domain-uclass.c
> +++ b/drivers/power/domain/power-domain-uclass.c
> @@ -10,6 +10,7 @@
>  #include <malloc.h>
>  #include <power-domain.h>
>  #include <power-domain-uclass.h>
> +#include <dm/device_compat.h>
>  #include <dm/device-internal.h>
>
>  struct power_domain_priv {
> @@ -184,6 +185,13 @@ static int dev_power_domain_ctrl(struct udevice *dev, 
> bool on)
>                                           "#power-domain-cells", 0);
>       for (i = 0; i < count; i++) {
>               ret = power_domain_get_by_index(dev, &pd, i);
> +
> +             if (ret) {
> +                     if (ret == -ENODEV)
> +                             dev_warn(dev, "power-domain driver not 
> found\n");
> +                     return (ret == -ENODEV) ? 0 : ret;
> +             }
> +
>               if (ret)
>                       return ret;

The above can be simplified

        if (ret == -ENODEV) {
                dev_warn(dev, "power-domain driver not found\n");
                return 0;
        }

        if (ret)
                return ret;

-Varada

>               if (on)
>
> --
> 2.34.1
>

Reply via email to