Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1470505

Re: DT connectors, thoughts

From Stephen Boyd <stephen.boyd@linaro.org>
Newsgroups linux.kernel
Subject Re: DT connectors, thoughts
Date 2016-08-26 03:50 +0200
Message-ID <saern-rr-1@gated-at.bofh.it> (permalink)
References <rRj8d-1UJ-7@gated-at.bofh.it> <rWhIw-7l8-57@gated-at.bofh.it> <rXrFL-3jF-9@gated-at.bofh.it> <rXAg1-R2-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Quoting David Gibson (2016-07-21 21:25:56)
> On Thu, Jul 21, 2016 at 02:15:57PM -0500, Rob Herring wrote:
> > On Mon, Jul 18, 2016 at 9:20 AM, David Gibson
> > <david@gibson.dropbear.id.au> wrote:
> > 
> > I understand how you are using i2c alias, but not the intc. It would
> > help if the same names were not used in multiple places unless they
> > are the same thing.
> 
> Yes, sorry.  We have both the /soc/intc node which is the base board's
> master interrupt controller.  Then we have the connector local 'intc'
> alias which describes the local interrupt space for just the
> connector.
> 
> > What does using aliases here buy us vs. just properties with a
> > phandle?
> 
> Um.. I'm not sure what you mean.

I think Rob means drop the aliases node and just have:

	property = &phandle;

In this example:

	i2c = &i2c;
	intc = &w1_irqs;
	mmio = &mmio;

or perhaps to have a list of phandles and names that map to them?

	targets = <&i2c>, <&w1_irqs>, <&mmio>;
	target-names = "i2c", "intc", "mmio";

?

> 
> > >                                 mmio = &mmio;
> > >                         };
> > >                 };
> > >         };
> > > };
> > >
> > > Note that the symbols are local to the connector, and explicitly
> > > listed, rather than including all labels in the tree.  This is to
> > > enforce (or at the very least encourage) plugins to only access those
> > > parts of the base tree.
> > >
> > > Note also the use of an interrupt nexus node contained within the
> > > connector to control which irqs the socketed device can use.  I think
> > > this needs some work to properly handle unit addresses, but hope
> > > that's enough to give the rough idea.
> > >
> > > So, what does the thing that goes in the socket look like?  I'm
> > > thinking some new dts syntax like this:
> > >
> > > /dts-v1/;
> > >
> > > /plugin/ foo,widget-socket {
> > >         compatible = "foo,whirligig-widget";
> > > };
> > >
> > > &i2c {
> > >         whirligig-controller@... {
> > >                 ...
> > >                 interrupt-parent = <&widget-irqs>;
> > >                 interrupts = <0>;
> > >         };
> > > };

How would we support an expansion board that goes onto two
sockets/connectors provided by the baseboard when the connectors
"export" the same phandle aliases? From what I can tell with this design
we'll be unable to describe a device on the expansion board that is
wired to properties provided by the two connectors.

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Re: DT connectors, thoughts Stephen Boyd <stephen.boyd@linaro.org> - 2016-08-26 03:50 +0200
  Re: DT connectors, thoughts David Gibson <david@gibson.dropbear.id.au> - 2016-08-29 15:50 +0200
    Re: DT connectors, thoughts David Gibson <david@gibson.dropbear.id.au> - 2016-08-31 02:40 +0200
      Re: DT connectors, thoughts David Gibson <david@gibson.dropbear.id.au> - 2016-09-08 02:30 +0200

csiph-web