Re: [PATCH] regulator: read low power states configuration fromdevice tree

From: Vincent Palatin
Date: Fri Jul 26 2013 - 12:07:27 EST

On Thu, Jul 25, 2013 at 1:03 PM, Mark Brown <broonie@xxxxxxxxxx> wrote:
> On Thu, Jul 25, 2013 at 12:42:00PM -0700, Vincent Palatin wrote:
>> +- regulator-suspend-disk-microvolt: voltage applied when entering S2D
>> +- regulator-suspend-disk-disabled: turn off when entering S2D
>> +- regulator-suspend-mem-microvolt: voltage applied when entering S2M
>> +- regulator-suspend-mem-disabled: turn off when entering S2M
>> +- regulator-suspend-standby-microvolt: voltage applied when entering standby
>> +- regulator-suspend-standby-disabled: turn off when entering standby
> The reason this isn't in device tree at the minute is that suspend to
> disk and suspend to RAM are somewhat Linux specific concepts and the
> whole thing gets more and more dynamic as time moves forwards with the
> suspend state for practical systems depending on the instantaneous
> device state prior to entering suspend and the bits that are fixed often
> involving sequencing elements and so on which get fixed in hardware
> and/or bootloader. Do you have practical systems where this is needed?

Yes, on a Chromebook machine, an internal USB device power rail is
connected to one of the FET of a TPS65090,
the device is leaking power in suspend-to-RAM, it would be nice to cut
the FET during suspend.

> It's also not clear to me hat the -disabled properties make sense; if we
> have properties for the state when enabled I'd expect them to allow
> things to be marked as enabled or disabled (with don't touch as the
> default).

you mean declaring an optional (string) property such as :
which can take the value "enabled" or "disabled"
power-regulator {
compatible = "ti,tps65090";
reg = <0x48>;
voltage-regulators {
regulator-name = "usb_leaker";
regulator-suspend-mem-state = "disabled";
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at