diff options
Diffstat (limited to 'drivers/regulator/s5m8767.c')
| -rw-r--r-- | drivers/regulator/s5m8767.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/regulator/s5m8767.c b/drivers/regulator/s5m8767.c index 58447db15de1..4ca2db059004 100644 --- a/drivers/regulator/s5m8767.c +++ b/drivers/regulator/s5m8767.c | |||
| @@ -311,8 +311,7 @@ static int s5m8767_set_voltage(struct regulator_dev *rdev, | |||
| 311 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); | 311 | struct s5m8767_info *s5m8767 = rdev_get_drvdata(rdev); |
| 312 | const struct s5m_voltage_desc *desc; | 312 | const struct s5m_voltage_desc *desc; |
| 313 | int reg_id = rdev_get_id(rdev); | 313 | int reg_id = rdev_get_id(rdev); |
| 314 | int reg, mask, ret; | 314 | int sel, reg, mask, ret; |
| 315 | int i; | ||
| 316 | u8 val; | 315 | u8 val; |
| 317 | 316 | ||
| 318 | switch (reg_id) { | 317 | switch (reg_id) { |
| @@ -333,19 +332,20 @@ static int s5m8767_set_voltage(struct regulator_dev *rdev, | |||
| 333 | 332 | ||
| 334 | desc = reg_voltage_map[reg_id]; | 333 | desc = reg_voltage_map[reg_id]; |
| 335 | 334 | ||
| 336 | i = s5m8767_convert_voltage_to_sel(desc, min_uV, max_uV); | 335 | sel = s5m8767_convert_voltage_to_sel(desc, min_uV, max_uV); |
| 337 | if (i < 0) | 336 | if (sel < 0) |
| 338 | return i; | 337 | return sel; |
| 339 | 338 | ||
| 340 | ret = s5m8767_get_voltage_register(rdev, ®); | 339 | ret = s5m8767_get_voltage_register(rdev, ®); |
| 341 | if (ret) | 340 | if (ret) |
| 342 | return ret; | 341 | return ret; |
| 343 | 342 | ||
| 344 | s5m_reg_read(s5m8767->iodev, reg, &val); | 343 | s5m_reg_read(s5m8767->iodev, reg, &val); |
| 345 | val = val & mask; | 344 | val &= ~mask; |
| 345 | val |= sel; | ||
| 346 | 346 | ||
| 347 | ret = s5m_reg_write(s5m8767->iodev, reg, val); | 347 | ret = s5m_reg_write(s5m8767->iodev, reg, val); |
| 348 | *selector = i; | 348 | *selector = sel; |
| 349 | 349 | ||
| 350 | return ret; | 350 | return ret; |
| 351 | } | 351 | } |
