aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAxel Lin <axel.lin@ingics.com>2014-03-21 04:16:24 -0400
committerMark Brown <broonie@linaro.org>2014-04-02 15:53:16 -0400
commitb96244fad9530a707b732c3650d349aed2c9cfcd (patch)
tree6258b5dd681cf55e1c1c532143ab210d050ab8cb
parentf7b1a8dc1c1ca30d6a9ceb1f23f0e9847668600b (diff)
regulator: s2mps11: Don't check enable_shift before setting enable ramp rate
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 <axel.lin@ingics.com> Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r--drivers/regulator/s2mps11.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/regulator/s2mps11.c b/drivers/regulator/s2mps11.c
index 68fd54702edb..e713c162fbd4 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)
202 if (!ramp_enable) 202 if (!ramp_enable)
203 goto ramp_disable; 203 goto ramp_disable;
204 204
205 if (enable_shift) { 205 ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP,
206 ret = regmap_update_bits(rdev->regmap, S2MPS11_REG_RAMP, 206 1 << enable_shift, 1 << enable_shift);
207 1 << enable_shift, 1 << enable_shift); 207 if (ret) {
208 if (ret) { 208 dev_err(&rdev->dev, "failed to enable ramp rate\n");
209 dev_err(&rdev->dev, "failed to enable ramp rate\n"); 209 return ret;
210 return ret;
211 }
212 } 210 }
213 211
214 ramp_val = get_ramp_delay(ramp_delay); 212 ramp_val = get_ramp_delay(ramp_delay);