Re: [PATCH v5 3/4] regulator: max77686: Add suspend disable for some LDOs

From: Krzysztof Kozlowski
Date: Wed Oct 29 2014 - 05:20:27 EST


On wto, 2014-10-28 at 22:31 +0000, Mark Brown wrote:
> On Mon, Oct 27, 2014 at 01:11:49PM +0100, Krzysztof Kozlowski wrote:
>
> > @@ -247,6 +250,8 @@ static struct regulator_ops max77686_ldo_ops = {
> > .set_voltage_sel = regulator_set_voltage_sel_regmap,
> > .set_voltage_time_sel = regulator_set_voltage_time_sel,
> > .set_suspend_mode = max77686_ldo_set_suspend_mode,
> > + .set_suspend_disable = max77686_set_suspend_disable,
> > + .set_suspend_enable = max77686_enable,
>
> This looks wrong, you're using the regular enable operation as suspend
> enable. How does that work without disrupting the current runtime
> state?

Currently it shouldn't disrupt state of regulator because during runtime
it may only be only: on (0x3) or off (0x0). Suspend enable in max77686
writes 0x3 to the register which means - always on.

If regulator was disabled before suspend then it has to be enabled
during suspend_enable() call which is exactly what max77686_enable does.
If it was enabled then nothing happens.

Best regards,
Krzysztof

--
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/