mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 05:26:42 +07:00
regulator: core: Fix continuous_voltage_range case in regulator_can_change_voltage
Regulator drivers with continuous_voltage_range flag set allows not setting n_voltages. Thus if continuous_voltage_range is set, check the constraint range instead. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
a49f0d1ea3
commit
19280e4071
@ -1885,9 +1885,15 @@ int regulator_can_change_voltage(struct regulator *regulator)
|
||||
struct regulator_dev *rdev = regulator->rdev;
|
||||
|
||||
if (rdev->constraints &&
|
||||
rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_VOLTAGE &&
|
||||
(rdev->desc->n_voltages - rdev->desc->linear_min_sel) > 1)
|
||||
return 1;
|
||||
(rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_VOLTAGE)) {
|
||||
if (rdev->desc->n_voltages - rdev->desc->linear_min_sel > 1)
|
||||
return 1;
|
||||
|
||||
if (rdev->desc->continuous_voltage_range &&
|
||||
rdev->constraints->min_uV && rdev->constraints->max_uV &&
|
||||
rdev->constraints->min_uV != rdev->constraints->max_uV)
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user