Fixed regulator can't change voltage and regulator_sync_voltage() returns -EINVAL in this case. Make regulator_sync_voltage() to succeed for regulators that are incapable to change voltage. On NVIDIA Tegra power management driver needs to sync voltage and we have one device (Trimslice) that uses fixed regulator which is getting synced. The syncing error isn't treated as fatal, but produces a noisy error message. This patch silences that error. Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> --- Changelog: v2: - Check regulator's voltage-change capability instead of checking whether it's a fixed regulator. drivers/regulator/core.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index 26bee444fc70..86aa4141efa9 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -4249,6 +4249,9 @@ int regulator_sync_voltage(struct regulator *regulator) struct regulator_voltage *voltage = ®ulator->voltage[PM_SUSPEND_ON]; int ret, min_uV, max_uV; + if (!regulator_ops_is_valid(rdev, REGULATOR_CHANGE_VOLTAGE)) + return 0; + regulator_lock(rdev); if (!rdev->desc->ops->set_voltage && -- 2.32.0