Commit e882eae80f37fac922c6faa25e5ba535f29f2d38
Committed by
Mark Brown
1 parent
b9e0348f20
regulator: tps65910: Correct VIO voltage configuration
The VIO regulator register specify the voltage configuration on bit3:2 of its register. And hence only these bits should be modified when setting voltage and used when reading voltage from register setting. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Showing 1 changed file with 5 additions and 2 deletions Side-by-side Diff
drivers/regulator/tps65910-regulator.c
... | ... | @@ -674,8 +674,9 @@ |
674 | 674 | step_mv = 100; |
675 | 675 | break; |
676 | 676 | case TPS65910_REG_VIO: |
677 | + value &= LDO_SEL_MASK; | |
678 | + value >>= LDO_SEL_SHIFT; | |
677 | 679 | return pmic->info[id]->voltage_table[value] * 1000; |
678 | - break; | |
679 | 680 | default: |
680 | 681 | return -EINVAL; |
681 | 682 | } |
682 | 683 | |
... | ... | @@ -767,9 +768,11 @@ |
767 | 768 | case TPS65911_REG_LDO6: |
768 | 769 | case TPS65911_REG_LDO7: |
769 | 770 | case TPS65911_REG_LDO8: |
770 | - case TPS65910_REG_VIO: | |
771 | 771 | return tps65910_modify_bits(pmic, reg, |
772 | 772 | (selector << LDO_SEL_SHIFT), LDO3_SEL_MASK); |
773 | + case TPS65910_REG_VIO: | |
774 | + return tps65910_modify_bits(pmic, reg, | |
775 | + (selector << LDO_SEL_SHIFT), LDO_SEL_MASK); | |
773 | 776 | } |
774 | 777 | |
775 | 778 | return -EINVAL; |