Re: regulator: adding enable control to fixed regulator interface

Mark Brown
2009-07-30T12:36:35Z

On Thu, Jul 30, 2009 at 03:20:24PM +0300, Roger Quadros wrote:

[Cut description of GPIO-switched regulator.]

> What is the best way to implement this within the regulator framework?
> Writing a regulator driver is one solution but I'm sure there must be
> many instances like this and writing a driver for each case is not
> that nice.

Only one driver should be needed even if a new driver is implemented for
this - we already have an abstracted API for GPIOs in the form of
gpiolib (see drivers/gpio) so the driver can just take in platform data
with the gpio number and a voltage as platform data.

> I want to use the fixed regulator driver but this does not have
> regulator enable/disable control.

> Isn't it a good idea to have enable/disable control for the current
> implementation of the fixed voltage regulator i.e. drivers/regulator/fixed.c ?

It should be possible to do it with platform data for the fixed voltage
regulator, though without looking at the code I can't say for certain if
it'd be easier to just add a separate driver rather than have the
conditional code to handle cases both with and without GPIO. I'd expect
it'll be fine to combine, though.

> The regulator enabling/disabling functionality can be implemented by
> platform code and the required function pointers could be passed through
> fixed_voltage_config structure.

I don't see any need for platform code to provide callbacks here given
the existing gpiolib abstraction.