[PATCH] power: regulator: Fix an handling error about EALREADY

Jonas Karlman jonas at kwiboo.se
Wed Nov 1 08:47:20 CET 2023


On 2023-11-01 08:23, Jaehoon Chung wrote:
> If reegulator is already enabled, it will be return to EALREADY.
> But driver that its function is called can notice as error, even though
> it's working fine.
> 
> Fixes: 4fcba5d556b ("regulator: implement basic reference counter")
> 
> Signed-off-by: Jaehoon Chung <jh80.chung at samsung.com>
> ---
>  drivers/power/regulator/regulator-uclass.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/power/regulator/regulator-uclass.c b/drivers/power/regulator/regulator-uclass.c
> index 3a6ba69f6d5f..fc1c3eb93c9d 100644
> --- a/drivers/power/regulator/regulator-uclass.c
> +++ b/drivers/power/regulator/regulator-uclass.c
> @@ -187,6 +187,10 @@ int regulator_set_enable(struct udevice *dev, bool enable)
>  		}
>  	}
>  
> +	/* Regulator is already enabled */
> +	if (ret == -EALREADY)
> +		return 0;
> +

Use of regulator_set_enable_if_allowed() will cover this error,
and regulator_set_enable() should continue to return this error.

Regards,
Jonas

>  	return ret;
>  }
>  



More information about the U-Boot mailing list