Re: [PATCH v2 3/5] regulator: helper routine to extract regulator_init_data

From: Rajendra Nayak
Date: Mon Oct 24 2011 - 05:14:09 EST


On Monday 24 October 2011 02:41 PM, Shawn Guo wrote:
On Mon, Oct 24, 2011 at 02:26:49PM +0530, Rajendra Nayak wrote:
On Monday 24 October 2011 02:32 PM, Shawn Guo wrote:
Okay, it's wrong then since so many people say it's wrong :) I guess
a quick fix would be adding one property in device tree node for
matching some unique field in regulator_desc, id, maybe? Mark, any
suggestion?

Thats basically what the DT compatible property is for :)

But adding compatible property will get DT core create 'struct dev'
for each regulator node, while we are trying to avoid that since
regulator core has been doing this.

No it won't.

So here's what I am suggesting.

Case 1:
One device per regulator:

DT nodes look something like this

reg1: reg@1 {
...
...
};

reg2: reg@2 {
...
...
};

The regulator driver probes 2 devices and each time the
dev passed has a of_node associated which the regulator
driver can then pass to the core.

Case 2:
One device for all regulators:

DT nodes look something like this

regulators {
reg1: reg@1 {
...
...
};

reg2: reg@2 {
...
...
};
};

The regulator driver probes only one device and the dev->of_node
points to the "regulators" node above.
The regulator driver then based on compatible property extracts
and registers all the child nodes of "regulators" (for ex: reg1, reg2
above) with each call to regulator_register and passes the child nodes
as of_node to be associated with the regulator device.
--
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/