Current code misses updating the register when enable_shift is 0.
e.g. S2MPS11_BUCK9_RAMP_SHIFT and S2MPS11_BUCK6_RAMP_EN_SHIFT are 0.

Signed-off-by: Axel Lin <[email protected]>
---
 drivers/regulator/s2mps11.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/drivers/regulator/s2mps11.c b/drivers/regulator/s2mps11.c
index 68fd547..e713c16 100644
--- a/drivers/regulator/s2mps11.c
+++ b/drivers/regulator/s2mps11.c
@@ -202,13 +202,11 @@ static int s2mps11_set_ramp_delay(struct regulator_dev 
*rdev, int ramp_delay)
        if (!ramp_enable)
                goto ramp_disable;
 
-       if (enable_shift) {
-               ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP,
-                                       1 << enable_shift, 1 << enable_shift);
-               if (ret) {
-                       dev_err(&rdev->dev, "failed to enable ramp rate\n");
-                       return ret;
-               }
+       ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP,
+                                1 << enable_shift, 1 << enable_shift);
+       if (ret) {
+               dev_err(&rdev->dev, "failed to enable ramp rate\n");
+               return ret;
        }
 
        ramp_val = get_ramp_delay(ramp_delay);
-- 
1.8.3.2



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to