[PATCH] power: regulator: Fix regulator_enable/disable() macros

Jonas Karlman jonas at kwiboo.se
Fri Jul 10 10:42:36 CEST 2026


Hi,

On 7/10/2026 1:16 AM, Jonas Karlman wrote:
> The commit 076265b75e61 ("compat: regulator: add enable/disable macros")
> added regulator_enable/disable() macros to provide a closer analogue to
> the Linux API.
> 
> These new macros wrap regulator_set_enable() that may return detailed
> error codes and should typically not directly be called by drivers.
> 
> Change the macros to wrap regulator_set_enable_if_allowed() that masks
> error codes consumers typically do not expect to closer match the
> behavior of the Linux API.
> 
> Fixes: 076265b75e61 ("compat: regulator: add enable/disable macros")
> Signed-off-by: Jonas Karlman <jonas at kwiboo.se>
> ---
>  include/power/regulator.h | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/include/power/regulator.h b/include/power/regulator.h
> index b8023721a165..ea79e0240b2b 100644
> --- a/include/power/regulator.h
> +++ b/include/power/regulator.h
> @@ -371,9 +371,6 @@ int regulator_get_enable(struct udevice *dev);
>   */
>  int regulator_set_enable(struct udevice *dev, bool enable);
>  
> -#define regulator_enable(dev) regulator_set_enable(dev, true)
> -#define regulator_disable(dev) regulator_set_enable(dev, false)
> -
>  /**
>   * regulator_set_enable_if_allowed: set regulator enable state if allowed by
>   *					regulator
> @@ -385,6 +382,9 @@ int regulator_set_enable(struct udevice *dev, bool enable);
>   */
>  int regulator_set_enable_if_allowed(struct udevice *dev, bool enable);
>  
> +#define regulator_enable(dev) regulator_set_enable_if_allowed(dev, true)
> +#define regulator_disable(dev) regulator_set_enable_if_allowed(dev, false)

I have realized that these macros are still only defined inside the #if
CONFIG_IS_ENABLED(DM_REGULATOR) block.

Will move these macros outside the #if #else blocks in a v2.

Regards,
Jonas

> +
>  /**
>   * regulator_set_suspend_enable: set regulator suspend enable state
>   *



More information about the U-Boot mailing list