Subject: Re: [PATCH 15/16] Add device tree for Ebony

From: Benjamin Herrenschmidt <[email-masked]>
Date: Thu, 15 Feb 2007 21:52:02 +1100

On Thu, 2007-02-15 at 04:09 +0100, Segher Boessenkool wrote:
> >> Yes.  UIC1 is not addressed via UIC0, and as such should
> >> not be a child of it; it should be a direct child of its DCR
> >> controller, just like UIC0.
> >
> > No, the DCR tree, like the interrupt tree in most cases, is
> > independent of the main tree structure.
> 
> Yes true; you can hang the UICs from somewhere under the
> "soc" node or whatever you want.  You need some way to
> distinguish separate identical devices though; you can't
> do it by device unit since your devices don't have any
> (they don't have a "reg" but only a "dcr-reg").  If you
> would hang them in a DCR tree, you could use the plain
> "reg" property instead of the "dcr-reg" property and
> all would be fine (if the DCR binding allows this -- and
> it better should, it is the standard OF addressing algorithm).

It's not as DCRs are orthogonal to the normal bus tree (yeah, it sucks
but that's how it is, broken by design :-)

For example, MAL is DMA'ing on PLB but controlled via DCRs.

> However, my main point remains: the two interrupt controllers
> should be siblings in the device tree, since they are that on
> the hardware.

Ben.