[PATCH v4 1/4] regulator: helper routine to extract regulator_init_data
From: Mark Brown <hidden>
Date: 2011-11-04 21:46:55
Also in:
linux-devicetree, linux-omap, lkml
On Fri, Nov 04, 2011 at 02:34:35PM -0700, Olof Johansson wrote:
On Fri, Nov 4, 2011 at 2:29 PM, Mark Brown
quoted
I think it's useful to define how consumers are supposed to do this somewhere - it is actually part of the core binding how consumers are supposed to do this.
Yeah, ok, but it shouldn't be part of the description of regulator properties per se. See how gpio does it, defining how a gpio-specifier is crafted. The equivalent should be done for regulators.
That seems to be pretty much exactly what's being done here, and like the GPIO bindings it's specified in the core document. Though perhaps there's some aspect of how the document is written that's missing. If you're talking about the specifics of the binding the GPIO bindings do suffer from the whole magic indexes into arrays problem that makes a lot of the older device tree bindings quite hard to read.
quoted
There's also a bit of magic here for chained supplies with one regulator supplying another (eg, using a DCDC to drop the system supply down to a lower voltage to supply a bunch of LDOs for improved efficiency).
Describing that in the device tree using regulator-specifiers shouldn't be too bad? The LDO will reference the DCDC as the parent supply (or input or whatever language you prefer). They don't have to be in the same topology, they will instead be under whatever controller/bus they are on for control -- i2c, etc.
That's not great as it means you've got a separate binding for supplies that happen to be connected to another regulator from that used for other supplies on the device which is particularly confusing in the fairly common case where a regulator chip has multiple supplies. Using the same method for binding all supplies seems much neater.