2014-02-25 06:58:01

by Alexandre Courbot

[permalink] [raw]
Subject: [PATCH] regulator: core: allow enabling without enable op

Commit 14c32a3ce6676265d7a27ea64a4d406e6dbad111 replaced direct uses of
ops->enable by calls to _regulator_do_enable. This prevents a fixed
regulators without a GPIO from being probed, since the former code
checked the existence of ops->enable and continued if it did not exist,
while _regulator_do_enable return -EINVAL in that case.

This patch fixes this by allowing _regulator_do_enable to go through
without error if ops->enable is not defined, similarly to what
_regulator_do_disable already does.

Signed-off-by: Alexandre Courbot <[email protected]>
---
drivers/regulator/core.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index bdb12659dd41..4306422cee5d 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1763,8 +1763,6 @@ static int _regulator_do_enable(struct regulator_dev *rdev)
ret = rdev->desc->ops->enable(rdev);
if (ret < 0)
return ret;
- } else {
- return -EINVAL;
}

/* Allow the regulator to ramp; it would be useful to extend
--
1.9.0


2014-02-25 09:44:05

by Sachin Kamat

[permalink] [raw]
Subject: Re: [PATCH] regulator: core: allow enabling without enable op

On 25 February 2014 12:27, Alexandre Courbot <[email protected]> wrote:
> Commit 14c32a3ce6676265d7a27ea64a4d406e6dbad111 replaced direct uses of
> ops->enable by calls to _regulator_do_enable. This prevents a fixed
> regulators without a GPIO from being probed, since the former code
> checked the existence of ops->enable and continued if it did not exist,
> while _regulator_do_enable return -EINVAL in that case.
>
> This patch fixes this by allowing _regulator_do_enable to go through
> without error if ops->enable is not defined, similarly to what
> _regulator_do_disable already does.
>
> Signed-off-by: Alexandre Courbot <[email protected]>

This patch fixes the fixed regulator registration failure on Exynos5420 board.

Tested-by: Sachin Kamat <[email protected]>

--
With warm regards,
Sachin