Subject: Re: Could the DTS experts look at this?

From: David Gibson <[email-masked]>
Date: Tue, 12 Feb 2008 10:56:52 +1100

On Tue, Feb 12, 2008 at 10:54:09AM +1100, David Gibson wrote:
> On Mon, Feb 11, 2008 at 11:57:10AM -0600, Timur Tabi wrote:
> > Arnd Bergmann wrote:
> > 
> > > Maybe we can introduce a more generic way of having conditional
> > > device nodes in the tree that get knocked out in the boot wrapper.
> > 
> > I've been thinking about doing just this for quite some time now.  I've had a 
> > few informal discussions without people about.
> > 
> > One idea is to allow attaching simple conditional expressions (like
> > X is <, =, or > than Y) to a node.  It is the responsibility of the
> > code that parses the device tree to assign values to X and Y.  For
> > instance, they could be the names of U-Boot environment variables.
> > If the expression is false, then the node is removed (or ignored)
> > from the device tree.  If it's true, then it's kept in.
> 
> In the binary tree representation itself?  No way.

Or to expand.  It's relatively easy now to just include multiple nodes
in the tree and either delete or nop some of them out conditionally
using libfdt.  But the conditional logic should be in the manipulating
agent (u-boot or bootwrapper or whatever), there's no way we're going
to require a conditional expression parser to interpret the device
tree blob itself.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson