linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Grant Likely" <grant.likely@secretlab.ca>
To: "Benjamin Herrenschmidt" <benh@kernel.crashing.org>
Cc: linuxppc-dev Development <linuxppc-dev@ozlabs.org>,
	Sven Luther <sven@genesi-usa.com>
Subject: Re: Discussion on SOC device tree bindings
Date: Wed, 17 Jan 2007 01:40:05 -0700	[thread overview]
Message-ID: <528646bc0701170040y21cbecbeq55e0d1eb7c28ff01@mail.gmail.com> (raw)
In-Reply-To: <1168928567.4803.55.camel@localhost.localdomain>

(Added ML to the CC list)

On 1/15/07, Benjamin Herrenschmidt <benh@kernel.crashing.org> wrote:
> On Mon, 2007-01-15 at 16:37 +0100, Segher Boessenkool wrote:
> > > Same logic with interrupts.
> >
> > Interrupts go from a device to the interrupt controller, here
> > it is the other way around.

> That doesn't matter. The actual direction of the signal doesn't matter.
---snip---
> and at the end of the day it doesn't matter, It's up to Sylvain and Grant do decide
> what they want to do.

Well, I suppose I should stop sitting on the fence on this and
actually give my opinion.  I have to agree with Ben here, I don't
think the direction of the link matters.  One binding can be trivially
generated from the other no matter which way it is done.

I don't think the argument that the data should not be scattered about
in various device nodes holds a whole lot of water.  There is already
precedence for this with the interrupt binding.  I've already stated
that I don't think the signal direction matters, so I don't agree with
the argument that interrupts are different because that are connected
the other way around.

Putting the linkage in the device nodes does not bloat the tree, and
it does not duplicate information.  The device tree is just as
expressive either way around, so typical usage becomes the tie
breaker.  Typical usage is for the device driver to "call" the system
node; therefore put the linkage information in the device node where
it's most easily retrieved when needed.

Looking at the larger scope; we're talking about an SoC here.  While
most of the SoC device drivers don't need to know anything about the
SoC as a whole, the platform code should really know what SoC part it
is on.  SoC designers love to toss in special cases which don't really
slide nicely into our pretty device tree, and the OS almost always
needs chip specific support code to handle it.  I'm inclined to say
that the bindings from device node to shared soc registers may be
*recommended*, but not *required*.  As long as there is some form of
linkage between the soc and device nodes, and as long as the SoC node
describes exactly which SoC it is, then the OS has all the information
it needs to figure out which devices are connected to which bits of
which shared registers (based on register address).  Now, this might
be a bad precedence, but I'm hesitant to go down the path of trying to
describe something in the device tree which is inherent to the SoC
design.

Cheers,
g.

-- 
Grant Likely, B.Sc. P.Eng.
Secret Lab Technologies Ltd.
grant.likely@secretlab.ca
(403) 399-0195

  parent reply	other threads:[~2007-01-17  8:40 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <528646bc0701131555n3249b503i3b6e8c37db41dd52@mail.gmail.com>
2007-01-14 22:29 ` Discussion on SOC device tree bindings Grant Likely
2007-01-15 11:05   ` Sascha Hauer
2007-01-15 13:48     ` Grant Likely
2007-01-15 15:42     ` Segher Boessenkool
2007-01-16  8:25       ` Sascha Hauer
     [not found] ` <45AA098C.70101@246tNt.com>
     [not found]   ` <6189b01379f62aa4516484872f4ef86f@kernel.crashing.org>
     [not found]     ` <1168810790.4803.11.camel@localhost.localdomain>
     [not found]       ` <ccc8fbc935d8f8d3e30870d43959f6c7@kernel.crashing.org>
     [not found]         ` <1168817449.4803.28.camel@localhost.localdomain>
     [not found]           ` <ef64a4198a02929a00c28abb5f0934b5@kernel.crashing.org>
     [not found]             ` <1168818533.4803.37.camel@localhost.localdomain>
     [not found]               ` <a1af25147ea7308c394d243511b96f69@kernel.crashing.org>
     [not found]                 ` <45ABA20E.30008@genesi-usa.com>
2007-01-15 17:06                   ` Grant Likely
2007-01-15 18:31                     ` Segher Boessenkool
2007-01-16  6:25                     ` Benjamin Herrenschmidt
2007-01-16  9:07                       ` Segher Boessenkool
     [not found]                 ` <1168928567.4803.55.camel@localhost.localdomain>
2007-01-17  8:40                   ` Grant Likely [this message]
2007-01-19 10:58                     ` Segher Boessenkool
2007-01-19 16:11                       ` Yoder Stuart-B08248
2007-01-19 16:38                         ` Grant Likely
2007-01-19 16:50                         ` Segher Boessenkool

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=528646bc0701170040y21cbecbeq55e0d1eb7c28ff01@mail.gmail.com \
    --to=grant.likely@secretlab.ca \
    --cc=benh@kernel.crashing.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=sven@genesi-usa.com \
    /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).