From: David Gibson <david@gibson.dropbear.id.au>
To: Scott Wood <scottwood@freescale.com>
Cc: linuxppc-dev@ozlabs.org, Jon Loeliger <jdl@jdl.com>,
Stefan Roese <sr@denx.de>, Roland Dreier <rdreier@cisco.com>,
linuxppc-embedded@ozlabs.org
Subject: Re: [PATCH] ppc: Add support for AMCC Taishan 440GX eval board
Date: Tue, 13 Feb 2007 11:43:23 +1100 [thread overview]
Message-ID: <20070213004322.GA4894@localhost.localdomain> (raw)
In-Reply-To: <45D0CEC6.3010209@freescale.com>
On Mon, Feb 12, 2007 at 02:32:06PM -0600, Scott Wood wrote:
> Jon Loeliger wrote:
> > So, like, the other day Benjamin Herrenschmidt mumbled:
> >
> >>Note that there are still things that we might want to change. For
> >>example, I think we really should look into adding a macro mecanism
> >>and/or an include mecanism to dtc so that we can do things like #include
> >><ibm440gp.dtc> to get the base processor/SoC definition and then
> >>"overlay" some properties on top of it (like emac phy mode etc...)
> >
> >
> > What do people prefer here? Straight CPP pre-run?
> > Direct support built into dtc to do file-inclusion, macros?
>
> Simple textual macros would make it difficult to define 123A and 123B
> SoCs whose device tree nodes are mostly a generic 123, but require a few
> changes in various parts. I'd rather see dtc support overlaying trees,
> with the "newer" tree able to add, modify, and remove nodes and
> properties from the "older", more generic tree.
We'll certainly need both macros and overlaying trees. Since SoC
nodes including external bus controllers in particular could have
entire board-dependent subtrees hanging off them a mere macro isn't
really sufficient.
Simple overlaying to add nodes, and/or add or replace properties is
pretty easy and natural to add. Removing nodes or properties is
rather uglier and I'd like to avoid if possible.
More convenient overlaying, by say grafting to a given labelled node,
rather than having to reproduce step-by-step the path to the overlaid
node is more complex but should be doable. The main thing is just
working out a sane syntax.
> Parametric macros (or "template" nodes) might be nice for a few things
> on top of that, though (preferably with better syntax than CPP).
Yes, macros certainly want to be parametric.
I'm leaning towards the conclusion that CPP won't quite cut it, for a
handful of reasons. But implementing macro and include support
directly in dtc strikes me as something which could suck up an
enormous amount of development. I'm considering using m4.
--
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
prev parent reply other threads:[~2007-02-13 0:43 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-12 10:29 [PATCH] ppc: Add support for AMCC Taishan 440GX eval board Stefan Roese
2007-02-12 12:06 ` Benjamin Herrenschmidt
2007-02-12 12:23 ` Stefan Roese
2007-02-12 18:30 ` Roland Dreier
2007-02-12 18:54 ` Stefan Roese
2007-02-12 19:55 ` Benjamin Herrenschmidt
2007-02-12 20:16 ` Jon Loeliger
2007-02-12 20:23 ` Benjamin Herrenschmidt
2007-02-12 20:41 ` Kumar Gala
2007-02-13 0:46 ` David Gibson
2007-02-13 5:28 ` Kumar Gala
2007-02-14 0:11 ` David Gibson
2007-02-14 0:30 ` Kumar Gala
2007-02-14 1:33 ` David Gibson
2007-02-12 20:32 ` Scott Wood
2007-02-13 0:43 ` David Gibson [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070213004322.GA4894@localhost.localdomain \
--to=david@gibson.dropbear.id.au \
--cc=jdl@jdl.com \
--cc=linuxppc-dev@ozlabs.org \
--cc=linuxppc-embedded@ozlabs.org \
--cc=rdreier@cisco.com \
--cc=scottwood@freescale.com \
--cc=sr@denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).