Commit 0f5da28f authored by Mark Brown's avatar Mark Brown

Merge remote-tracking branch 'regulator/fix/ti-abb' into regulator-linus

parents 780a0ff7 bf00ca35
......@@ -279,8 +279,12 @@ static int ti_abb_set_opp(struct regulator_dev *rdev, struct ti_abb *abb,
ti_abb_rmw(regs->opp_sel_mask, info->opp_sel, regs->control_reg,
abb->base);
/* program LDO VBB vset override if needed */
if (abb->ldo_base)
/*
* program LDO VBB vset override if needed for !bypass mode
* XXX: Do not switch sequence - for !bypass, LDO override reset *must*
* be performed *before* switch to bias mode else VBB glitches.
*/
if (abb->ldo_base && info->opp_sel != TI_ABB_NOMINAL_OPP)
ti_abb_program_ldovbb(dev, abb, info);
/* Initiate ABB ldo change */
......@@ -295,6 +299,14 @@ static int ti_abb_set_opp(struct regulator_dev *rdev, struct ti_abb *abb,
if (ret)
goto out;
/*
* Reset LDO VBB vset override bypass mode
* XXX: Do not switch sequence - for bypass, LDO override reset *must*
* be performed *after* switch to bypass else VBB glitches.
*/
if (abb->ldo_base && info->opp_sel == TI_ABB_NOMINAL_OPP)
ti_abb_program_ldovbb(dev, abb, info);
out:
return ret;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment