Re: [PATCH v1] regulator: Don't error out fixed regulator in regulator_sync_voltage()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 21, 2021 at 02:07:07PM +0300, Dmitry Osipenko wrote:

> Fixed regulator can't change voltage and regulator_sync_voltage() returns
> -EINVAL in this case. Make regulator_sync_voltage() to succeed for a fixed
> regulator.

> +++ b/drivers/regulator/core.c
> @@ -4249,6 +4249,9 @@ int regulator_sync_voltage(struct regulator *regulator)
>  	struct regulator_voltage *voltage = &regulator->voltage[PM_SUSPEND_ON];
>  	int ret, min_uV, max_uV;
>  
> +	if (rdev->desc->fixed_uV && rdev->desc->n_voltages == 1)
> +		return 0;
> +
>  	regulator_lock(rdev);

It's unclear why this is checking both fixed_uV and n_voltages.  TBH
this feels like a higher level issue - with normal voltage configuration
we would have noticed that our constraints prevent the voltage changing
and not go as far as trying to actually apply a new configuration.  I
would expect a similar thing to be happening here.

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux