Some regulators support get_voltage and some support get_voltage_sel operations. Do voltage change propagation only when the current regulator has a minimum dropout voltage specified or if the current regulator lacks both get_voltage and get_voltage_sel operations. Signed-off-by: Tirupathi Reddy <tirupath@xxxxxxxxxxxxxx> --- drivers/regulator/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index c0d9ae8..9fecbd4 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -2938,7 +2938,8 @@ static int regulator_set_voltage_unlocked(struct regulator *regulator, if (rdev->supply && regulator_ops_is_valid(rdev->supply->rdev, REGULATOR_CHANGE_VOLTAGE) && - (rdev->desc->min_dropout_uV || !rdev->desc->ops->get_voltage)) { + (rdev->desc->min_dropout_uV || !(rdev->desc->ops->get_voltage || + rdev->desc->ops->get_voltage_sel))) { int current_supply_uV; int selector; -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html