Device tree with early buffer allocations and aliased memory
Scott Wood
scottwood at freescale.com
Fri Nov 19 09:14:14 EST 2010
On Thu, 18 Nov 2010 14:08:27 -0800
David VomLehn <dvomlehn at cisco.com> wrote:
> On Tue, Nov 09, 2010 at 10:25:37PM -0600, Grant Likely wrote:
> > On Wed, Nov 03, 2010 at 01:50:37PM -0700, David VomLehn wrote:
> > > device-s {
> > > compatible = "cisco,device-s";
> > > cisco,static-buffers =
> > > "device-s-b1",<0x24000000 0x00100000>,
> > > "device-s-b2",<0x60000000 0x00200000>;
> >
> > Or, simply:
> > cisco,static-buffer-b1 = <0x24000000 0x00100000>;
> > cisco,static-buffer-b2 = <0x60000000 0x00200000>;
> >
> > Try to avoid mixing string and cell values in the same property where
> > appropriate. Sometimes doing so is the best binding, but those cases
> > are rare.
>
> I started implementing the 'cisco,static-buffer-b1' solution and it feels pretty awkward.
> When I want to get the property value, I have to know not only the constant property
> name but also a buffer name. The buffer name is really one of the pieces of data I
> want to get. I can, of course, write code to scan the node and do a partial match on
> the property name, but that doesn't feel like the rest of the DT API.
>
> Not only does this have me doing odd things to property names, but I have a number of
> devices. If I should want another buffer, I must create another property name.
> This solution has me creating a bunch of property names, which all I really
> want is two: "cisco,static-buffers" and "cisco,dynamic-buffers".
>
> I think this is an occasion where it makes sense to mix string and cell values in the
> same property.
How about:
device-s {
compatible = "cisco,device-s";
...
cisco,static-buffers {
device-s-b1 = <0x24000000 0x00100000>;
device-s-b2 = <0x60000000 0x00200000>;
};
};
-Scott
More information about the devicetree-discuss
mailing list