diff options
| -rw-r--r-- | drivers/regulator/tps65910-regulator.c | 14 | ||||
| -rw-r--r-- | include/linux/mfd/tps65910.h | 3 |
2 files changed, 10 insertions, 7 deletions
diff --git a/drivers/regulator/tps65910-regulator.c b/drivers/regulator/tps65910-regulator.c index 66d2d60b436a..b552aae55b41 100644 --- a/drivers/regulator/tps65910-regulator.c +++ b/drivers/regulator/tps65910-regulator.c | |||
| @@ -664,10 +664,10 @@ static int tps65910_set_voltage_dcdc(struct regulator_dev *dev, | |||
| 664 | 664 | ||
| 665 | switch (id) { | 665 | switch (id) { |
| 666 | case TPS65910_REG_VDD1: | 666 | case TPS65910_REG_VDD1: |
| 667 | dcdc_mult = (selector / VDD1_2_NUM_VOLTS) + 1; | 667 | dcdc_mult = (selector / VDD1_2_NUM_VOLT_FINE) + 1; |
| 668 | if (dcdc_mult == 1) | 668 | if (dcdc_mult == 1) |
| 669 | dcdc_mult--; | 669 | dcdc_mult--; |
| 670 | vsel = (selector % VDD1_2_NUM_VOLTS) + 3; | 670 | vsel = (selector % VDD1_2_NUM_VOLT_FINE) + 3; |
| 671 | 671 | ||
| 672 | tps65910_modify_bits(pmic, TPS65910_VDD1, | 672 | tps65910_modify_bits(pmic, TPS65910_VDD1, |
| 673 | (dcdc_mult << VDD1_VGAIN_SEL_SHIFT), | 673 | (dcdc_mult << VDD1_VGAIN_SEL_SHIFT), |
| @@ -675,10 +675,10 @@ static int tps65910_set_voltage_dcdc(struct regulator_dev *dev, | |||
| 675 | tps65910_reg_write(pmic, TPS65910_VDD1_OP, vsel); | 675 | tps65910_reg_write(pmic, TPS65910_VDD1_OP, vsel); |
| 676 | break; | 676 | break; |
| 677 | case TPS65910_REG_VDD2: | 677 | case TPS65910_REG_VDD2: |
| 678 | dcdc_mult = (selector / VDD1_2_NUM_VOLTS) + 1; | 678 | dcdc_mult = (selector / VDD1_2_NUM_VOLT_FINE) + 1; |
| 679 | if (dcdc_mult == 1) | 679 | if (dcdc_mult == 1) |
| 680 | dcdc_mult--; | 680 | dcdc_mult--; |
| 681 | vsel = (selector % VDD1_2_NUM_VOLTS) + 3; | 681 | vsel = (selector % VDD1_2_NUM_VOLT_FINE) + 3; |
| 682 | 682 | ||
| 683 | tps65910_modify_bits(pmic, TPS65910_VDD2, | 683 | tps65910_modify_bits(pmic, TPS65910_VDD2, |
| 684 | (dcdc_mult << VDD2_VGAIN_SEL_SHIFT), | 684 | (dcdc_mult << VDD2_VGAIN_SEL_SHIFT), |
| @@ -756,9 +756,9 @@ static int tps65910_list_voltage_dcdc(struct regulator_dev *dev, | |||
| 756 | switch (id) { | 756 | switch (id) { |
| 757 | case TPS65910_REG_VDD1: | 757 | case TPS65910_REG_VDD1: |
| 758 | case TPS65910_REG_VDD2: | 758 | case TPS65910_REG_VDD2: |
| 759 | mult = (selector / VDD1_2_NUM_VOLTS) + 1; | 759 | mult = (selector / VDD1_2_NUM_VOLT_FINE) + 1; |
| 760 | volt = VDD1_2_MIN_VOLT + | 760 | volt = VDD1_2_MIN_VOLT + |
| 761 | (selector % VDD1_2_NUM_VOLTS) * VDD1_2_OFFSET; | 761 | (selector % VDD1_2_NUM_VOLT_FINE) * VDD1_2_OFFSET; |
| 762 | break; | 762 | break; |
| 763 | case TPS65911_REG_VDDCTRL: | 763 | case TPS65911_REG_VDDCTRL: |
| 764 | volt = VDDCTRL_MIN_VOLT + (selector * VDDCTRL_OFFSET); | 764 | volt = VDDCTRL_MIN_VOLT + (selector * VDDCTRL_OFFSET); |
| @@ -947,6 +947,8 @@ static __devinit int tps65910_probe(struct platform_device *pdev) | |||
| 947 | 947 | ||
| 948 | if (i == TPS65910_REG_VDD1 || i == TPS65910_REG_VDD2) { | 948 | if (i == TPS65910_REG_VDD1 || i == TPS65910_REG_VDD2) { |
| 949 | pmic->desc[i].ops = &tps65910_ops_dcdc; | 949 | pmic->desc[i].ops = &tps65910_ops_dcdc; |
| 950 | pmic->desc[i].n_voltages = VDD1_2_NUM_VOLT_FINE * | ||
| 951 | VDD1_2_NUM_VOLT_COARSE; | ||
| 950 | } else if (i == TPS65910_REG_VDD3) { | 952 | } else if (i == TPS65910_REG_VDD3) { |
| 951 | if (tps65910_chip_id(tps65910) == TPS65910) | 953 | if (tps65910_chip_id(tps65910) == TPS65910) |
| 952 | pmic->desc[i].ops = &tps65910_ops_vdd3; | 954 | pmic->desc[i].ops = &tps65910_ops_vdd3; |
diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h index 82b4c8801a4f..8bf2cb9502dd 100644 --- a/include/linux/mfd/tps65910.h +++ b/include/linux/mfd/tps65910.h | |||
| @@ -243,7 +243,8 @@ | |||
| 243 | 243 | ||
| 244 | 244 | ||
| 245 | /*Registers VDD1, VDD2 voltage values definitions */ | 245 | /*Registers VDD1, VDD2 voltage values definitions */ |
| 246 | #define VDD1_2_NUM_VOLTS 73 | 246 | #define VDD1_2_NUM_VOLT_FINE 73 |
| 247 | #define VDD1_2_NUM_VOLT_COARSE 3 | ||
| 247 | #define VDD1_2_MIN_VOLT 6000 | 248 | #define VDD1_2_MIN_VOLT 6000 |
| 248 | #define VDD1_2_OFFSET 125 | 249 | #define VDD1_2_OFFSET 125 |
| 249 | 250 | ||
