diff options
author | Axel Lin <axel.lin@gmail.com> | 2012-06-20 10:55:50 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-07-02 13:27:10 -0400 |
commit | 0072f0a82ce78ceb634f00a57d80c9b421b061d4 (patch) | |
tree | 5c33c513cf8af95d921ba50e6b6f583906fd532a /drivers/regulator/tps62360-regulator.c | |
parent | 1a5d39d0644fa01e659ee42b5ec47abbd7db3afb (diff) |
regulator: tps62360: Convert to regulator_set_voltage_time_sel()
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'drivers/regulator/tps62360-regulator.c')
-rw-r--r-- | drivers/regulator/tps62360-regulator.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/drivers/regulator/tps62360-regulator.c b/drivers/regulator/tps62360-regulator.c index bcea4e1eea1e..103bb62aaef8 100644 --- a/drivers/regulator/tps62360-regulator.c +++ b/drivers/regulator/tps62360-regulator.c | |||
@@ -74,7 +74,6 @@ struct tps62360_chip { | |||
74 | int lru_index[4]; | 74 | int lru_index[4]; |
75 | int curr_vset_vsel[4]; | 75 | int curr_vset_vsel[4]; |
76 | int curr_vset_id; | 76 | int curr_vset_id; |
77 | int change_uv_per_us; | ||
78 | }; | 77 | }; |
79 | 78 | ||
80 | /* | 79 | /* |
@@ -173,16 +172,6 @@ static int tps62360_dcdc_set_voltage_sel(struct regulator_dev *dev, | |||
173 | return 0; | 172 | return 0; |
174 | } | 173 | } |
175 | 174 | ||
176 | static int tps62360_set_voltage_time_sel(struct regulator_dev *rdev, | ||
177 | unsigned int old_selector, unsigned int new_selector) | ||
178 | { | ||
179 | struct tps62360_chip *tps = rdev_get_drvdata(rdev); | ||
180 | |||
181 | return DIV_ROUND_UP(abs(new_selector - old_selector) * | ||
182 | rdev->desc->uV_step, | ||
183 | tps->change_uv_per_us); | ||
184 | } | ||
185 | |||
186 | static int tps62360_set_mode(struct regulator_dev *rdev, unsigned int mode) | 175 | static int tps62360_set_mode(struct regulator_dev *rdev, unsigned int mode) |
187 | { | 176 | { |
188 | struct tps62360_chip *tps = rdev_get_drvdata(rdev); | 177 | struct tps62360_chip *tps = rdev_get_drvdata(rdev); |
@@ -249,7 +238,7 @@ static struct regulator_ops tps62360_dcdc_ops = { | |||
249 | .set_voltage_sel = tps62360_dcdc_set_voltage_sel, | 238 | .set_voltage_sel = tps62360_dcdc_set_voltage_sel, |
250 | .list_voltage = regulator_list_voltage_linear, | 239 | .list_voltage = regulator_list_voltage_linear, |
251 | .map_voltage = regulator_map_voltage_linear, | 240 | .map_voltage = regulator_map_voltage_linear, |
252 | .set_voltage_time_sel = tps62360_set_voltage_time_sel, | 241 | .set_voltage_time_sel = regulator_set_voltage_time_sel, |
253 | .set_mode = tps62360_set_mode, | 242 | .set_mode = tps62360_set_mode, |
254 | .get_mode = tps62360_get_mode, | 243 | .get_mode = tps62360_get_mode, |
255 | }; | 244 | }; |
@@ -292,7 +281,7 @@ static int __devinit tps62360_init_dcdc(struct tps62360_chip *tps, | |||
292 | ramp_ctrl = (ramp_ctrl >> 4) & 0x7; | 281 | ramp_ctrl = (ramp_ctrl >> 4) & 0x7; |
293 | 282 | ||
294 | /* ramp mV/us = 32/(2^ramp_ctrl) */ | 283 | /* ramp mV/us = 32/(2^ramp_ctrl) */ |
295 | tps->change_uv_per_us = DIV_ROUND_UP(32000, BIT(ramp_ctrl)); | 284 | tps->desc.ramp_delay = DIV_ROUND_UP(32000, BIT(ramp_ctrl)); |
296 | return ret; | 285 | return ret; |
297 | } | 286 | } |
298 | 287 | ||