Re: [PATCH v2 1/2] regulator: core: add regulator_has_continuous_voltage_range()

From: Mark Brown
Date: Mon Mar 20 2017 - 08:07:34 EST


On Fri, Mar 17, 2017 at 05:03:30PM -0700, Matthias Kaehlcke wrote:

> In principle I totally agree with you that consumers should be able
> to enumerate the supported voltages with the existing functions. And
> they can, as long as they already know (or assume) that the regulator
> they are using actually has discrete steps, otherwise they might get
> unexpected results.

Given the limits of number representation continuous regulators also
have discrete steps, they just have a lot of them (but so do some
regulators we currently say aren't continuous so...).

> You are right that my case is very specialist, however I think it is
> a general problem that a consumer can't know whether the results of
> _list_voltage(), etc correspond to the regulator itself or to its
> supplies. E.g. a consumer might have a continuous reg which is
> supplied by a discrete reg, in this case _list_voltage() would return
> the steps of the supply reg, which is probably not what most consumers
> expect.

No, this is doesn't make much sense! Why should we be reporting
properties of the parent regulator when the child regulator is
regulating away all visibility of those properties?

> > > Please see my explication above on why the vctrl driver needs to know
> > > this.

> > I'm seeing nothing in the above that addresses my question, you don't
> > even seem to have mentioned supplies.

> Sorry, I really didn't try to evade your question. Does it make more
> sense with the example above?

No, not at all.

> > What we should be doing for continuous regulators is allowing people to
> > list the supported voltages as they would for other regulators.

> In the overall regulator context this may make sense, at this point I
> don't really have enough background on the subsystem to have an
> informed opinion.

> From the vctrl perspective I wouldn't be overly happy, since it
> wouldn't allow to distinguish between continuous and discrete
> supplies, and I still think that handling discrete supplies
> differently is simpler/more efficient. This doesn't mean I argue
> against your proposal if it is deemed the right thing from a subsystem
> perspective.

If it helps think of a continuous regulator as a discrete regulator with
a base voltage of 0 and steps of 1uV.

Attachment: signature.asc
Description: PGP signature