linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: David Gibson <david@gibson.dropbear.id.au>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Jon Loeliger <jdl@jdl.com>,
	microblaze-uclinux@itee.uq.edu.au,
	Michal Simek <simekm2@fel.cvut.cz>,
	linuxppc-dev@ozlabs.org, git <git@xilinx.com>
Subject: Re: Xilinx EDK BSP generation of device trees for microblaze and PowerPC
Date: Mon, 3 Dec 2007 11:55:42 +1100	[thread overview]
Message-ID: <20071203005542.GB26919@localhost.localdomain> (raw)
In-Reply-To: <fa686aa40711251447t57f96dd4iba51d68e1c9a9c5c@mail.gmail.com>

On Sun, Nov 25, 2007 at 03:47:12PM -0700, Grant Likely wrote:
> On 11/24/07, Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> wrote:
[snip]
> >  So: the mpmc generates a 'memory' node, corresponding to it's memory
> > interface.  It also gets a separate entry which contains the (optional, not
> > present in this example) slave management interface (for ECC and performance
> > information), and any sdma ports.  In this case, this node is mpmc@90000000,
> > because there is no management interface.  If a management interface was
> > present, then it would be @ the management address.
> 
> I don't think this is right; but I'm not sure.  I don't know what the
> best naming convention is for the case of no management interface, but
> mpmc@90000000 doesn't feel right.
> 
> Segher, David; what's your opinion?

If a node is present, but has no reg property, then it should not have
a unit address either.  AFAICT what you're doing here is having one
node to represent the actual memory space (/memory@XXX, as it should
be) and another to represent the memory controller's control
interface.  That's reasonable, but the unit address of the control
interface should be the address of the control registers, not the
address of the memory.  If there is no control interface, there should
be no node for it at all.

[snip]
> >  The temac works similarly, although the temac itself doesn't have a slave
> > interface, so no compatible node for it.  The sub nodes get the compatible
> > string for the ll_temac driver.  In this case, there is only one temac port
> > active.  Some of the parameters are specific to port 0, in which case the
> > parameter names (e.g. phyaddr) are generated by stripping off the complete
> > C_TEMAC0 prefix.  Other parameters (e.g. phy-type) are common to both sub
> > nodes, but are duplicated to make it easier for the driver to get the
> > information out.  At runtime, the driver has to follow the llink-connected
> > path to find what it is connected to, and use the dma code, or the fifo
> > code.
> >
> >  the xps-ll-fifo structure is a bit simpler, with llink-connected pointing
> > to the fifo, which looks like a 'normal' peripheral.
> >
> >  Points for comment:
> >  1) I don't like the "PIM3" label, which is artificial (i.e. it doesn't
> > correspond to a name in the .mhs) and not guaranteed to be unique.  However,
> > in the BSP generator it seems awkward to generate path references easily in
> > a single pass.  What I'd might prefer is:
> >                  DDR2_SDRAM: mpmc@90000000 {
> >                          sdma@3 {
> >
> >  and refer to the sdma port using something like <&DDR2_SDRAM/sdma@3>, but I
> > don't think you can do that in dtc?
> 
> If not, it is possible to extend the dtc syntax.  Jon, David?  Thoughts?

&label/relative/path is not currently allowable in dtc.  I suppose
it's possible to add it, but there are complications.  I'm already
making some patches to deal with lexical ambiguities in the
&/full/path syntax, and the new syntax would make things more
complicated to deal with.  I'll think about it.

-- 
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

      parent reply	other threads:[~2007-12-03  0:55 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-20 19:44 Xilinx EDK BSP generation of device trees for microblaze and PowerPC Stephen Neuendorffer
2007-11-25  6:24 ` Stephen Neuendorffer
2007-11-25 22:47   ` Grant Likely
2007-11-26 21:44     ` Stephen Neuendorffer
2007-12-03  0:48       ` David Gibson
2007-12-03  2:47       ` Grant Likely
2007-12-08  0:58         ` Stephen Neuendorffer
2007-12-03  0:55     ` 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=20071203005542.GB26919@localhost.localdomain \
    --to=david@gibson.dropbear.id.au \
    --cc=git@xilinx.com \
    --cc=grant.likely@secretlab.ca \
    --cc=jdl@jdl.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=microblaze-uclinux@itee.uq.edu.au \
    --cc=simekm2@fel.cvut.cz \
    /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).