Re: regulator: adding enable control to fixed regulator interface

From: Mark Brown
Date: Thu Jul 30 2009 - 08:36:44 EST


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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/