forked from Minki/linux
regulator: tps65917/palmas: Add bypass "On" value
When commitb554e14506
("regulator: tps65917/palmas: Add bypass ops for LDOs with bypass capability") introduced bypass capability to palmas regulator, it went with the assumption that regulator regmap helpers just check val against the bypass_mask. Unfortunately, this ignored the explicit "on" and "off" values when the register value is masked with bypass_mask in commitca5d1b3524
("regulator: helpers: Modify helpers enabling multi-bit control"). With the recent commitdd1a571dae
("regulator: helpers: Ensure bypass register field matches ON value"), this issue gets highlighted and fails tps65917/palmas based platforms which need regulators/ldos that have bypass capability. Introduce the bypass_on value appropriately for tps65917/palmas regulator. Fixes:b554e14506
("regulator: tps65917/palmas: Add bypass ops for LDOs with bypass capability") Cc: Keerthy <j-keerthy@ti.com> Cc: Mark Brown <broonie@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
f55532a0c0
commit
e0341f1732
@ -944,6 +944,8 @@ static int palmas_ldo_registration(struct palmas_pmic *pmic,
|
||||
if (id == PALMAS_REG_LDO9) {
|
||||
desc->ops = &palmas_ops_ldo9;
|
||||
desc->bypass_reg = desc->enable_reg;
|
||||
desc->bypass_val_on =
|
||||
PALMAS_LDO9_CTRL_LDO_BYPASS_EN;
|
||||
desc->bypass_mask =
|
||||
PALMAS_LDO9_CTRL_LDO_BYPASS_EN;
|
||||
}
|
||||
@ -1055,6 +1057,8 @@ static int tps65917_ldo_registration(struct palmas_pmic *pmic,
|
||||
id == TPS65917_REG_LDO2) {
|
||||
desc->ops = &tps65917_ops_ldo_1_2;
|
||||
desc->bypass_reg = desc->enable_reg;
|
||||
desc->bypass_val_on =
|
||||
TPS65917_LDO1_CTRL_BYPASS_EN;
|
||||
desc->bypass_mask =
|
||||
TPS65917_LDO1_CTRL_BYPASS_EN;
|
||||
}
|
||||
@ -1206,6 +1210,7 @@ static int palmas_smps_registration(struct palmas_pmic *pmic,
|
||||
desc->enable_mask = SMPS10_BOOST_EN;
|
||||
desc->bypass_reg = PALMAS_BASE_TO_REG(PALMAS_SMPS_BASE,
|
||||
PALMAS_SMPS10_CTRL);
|
||||
desc->bypass_val_on = SMPS10_BYPASS_EN;
|
||||
desc->bypass_mask = SMPS10_BYPASS_EN;
|
||||
desc->min_uV = 3750000;
|
||||
desc->uV_step = 1250000;
|
||||
|
Loading…
Reference in New Issue
Block a user