Re: [PATCH 1/6] regulator: core: Allow simultaneous use of enable op and GPIO

From: Alexandre Courbot
Date: Wed Jun 22 2016 - 21:11:00 EST


On Wed, Jun 22, 2016 at 7:34 PM, Mark Brown <broonie@xxxxxxxxxx> wrote:
> On Wed, Jun 22, 2016 at 05:25:53PM +0900, Alexandre Courbot wrote:
>> The current regulator enable/disable mechanism does not call the driver
>> enable/disable op if an enable GPIO is set. It may be desirable to use
>> both mechanisms though, e.g. in the case of a PWM regulator that also
>> has an enable GPIO.
>>
>> _regulator_is_enabled() is also updated in order to take both enable
>> conditions into account.
>
> This is going to break or at least reduce the performance of a lot of
> users - it is very common for regulators to have configurable support
> for a GPIO enable in addition to a register enable with the GPIO enable
> replacing a register enable for improved performance.

Ah, I wasn't aware of this.

> If you have some
> strange device that requires GPIO and other operations the driver should
> handle that, if nothing else it's likely that there are sequencing
> requirements between the two which we are probably not going to get
> right for everyone in the core.

Having dedicated enable GPIO code in the PWM driver sounded redundant
since we already have the same in the core, which is why I went for
this approach. But with your above point it seems like I have no
choice.

Will rework this and send a simpler change to just pwm-regulator, thanks!