diff options
author | Axel Lin <axel.lin@ingics.com> | 2020-02-12 23:02:23 +0800 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-02-17 19:13:26 +0000 |
commit | 502cdd605edd95209661c8bf90927af6d05c011c (patch) | |
tree | b2e1a0f9a70817d3332f5c6435a2056513f5cebf /drivers/regulator/mp5416.c | |
parent | d69f763fd360ec62dab9024f98209655f3046c68 (diff) |
regulator: mp5416: Fix output discharge enable bit for LDOs
The .active_discharge_on/.active_discharge_mask settings does not match
the datasheet, fix it.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Link: https://lore.kernel.org/r/20200212150223.20042-1-axel.lin@ingics.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/regulator/mp5416.c')
-rw-r--r-- | drivers/regulator/mp5416.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/regulator/mp5416.c b/drivers/regulator/mp5416.c index 7954ad17249b..67ce1b52a1a1 100644 --- a/drivers/regulator/mp5416.c +++ b/drivers/regulator/mp5416.c @@ -73,7 +73,7 @@ .owner = THIS_MODULE, \ } -#define MP5416LDO(_name, _id) \ +#define MP5416LDO(_name, _id, _dval) \ [MP5416_LDO ## _id] = { \ .id = MP5416_LDO ## _id, \ .name = _name, \ @@ -87,9 +87,9 @@ .vsel_mask = MP5416_MASK_VSET, \ .enable_reg = MP5416_REG_LDO ##_id, \ .enable_mask = MP5416_REGULATOR_EN, \ - .active_discharge_on = BIT(_id), \ + .active_discharge_on = _dval, \ .active_discharge_reg = MP5416_REG_CTL2, \ - .active_discharge_mask = BIT(_id), \ + .active_discharge_mask = _dval, \ .owner = THIS_MODULE, \ } @@ -155,10 +155,10 @@ static struct regulator_desc mp5416_regulators_desc[MP5416_MAX_REGULATORS] = { MP5416BUCK("buck2", 2, mp5416_I_limits2, MP5416_REG_CTL1, BIT(1), 2), MP5416BUCK("buck3", 3, mp5416_I_limits1, MP5416_REG_CTL1, BIT(2), 1), MP5416BUCK("buck4", 4, mp5416_I_limits2, MP5416_REG_CTL2, BIT(5), 2), - MP5416LDO("ldo1", 1), - MP5416LDO("ldo2", 2), - MP5416LDO("ldo3", 3), - MP5416LDO("ldo4", 4), + MP5416LDO("ldo1", 1, BIT(4)), + MP5416LDO("ldo2", 2, BIT(3)), + MP5416LDO("ldo3", 3, BIT(2)), + MP5416LDO("ldo4", 4, BIT(1)), }; /* |