linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
To: "robh@kernel.org" <robh@kernel.org>
Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"Vineet.Gupta1@synopsys.com" <Vineet.Gupta1@synopsys.com>,
	"Eugeniy.Paltsev@synopsys.com" <Eugeniy.Paltsev@synopsys.com>,
	"Alexey.Brodkin@synopsys.com" <Alexey.Brodkin@synopsys.com>,
	"linux-snps-arc@lists.infradead.org" 
	<linux-snps-arc@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board
Date: Thu, 29 Jun 2017 16:39:45 +0000	[thread overview]
Message-ID: <1498754384.2378.10.camel@synopsys.com> (raw)
In-Reply-To: <20170628225005.5ume54d67vtvp5fi@rob-hp-laptop>

On Wed, 2017-06-28 at 17:50 -0500, Rob Herring wrote:
> > > > +                       #clock-cells = <0>;
> > > > +                       compatible = "fixed-clock";
> > > > +                       clock-frequency = <1000000000>;
> > > > +               };
> > > > +
> > > > +               core_intc: archs-intc@cpu {
> > > 
> > > cpu is not a valid unit-address. How are these interrupt
> > > controllers addressed?
> > 
> > We have per-core INTC so each core communicates to its own INTC and
> > there's no way
> > for any core to talk with INTC of another core.
> > 
> > But then we have the next level INTC which is IDU (Interrupt
> > Distribution Unit)
> > which dispatches "common" IRQs to different upstream per-core INTC,
> > see below its node. 
> 
> Okay, I'd just do "cpu-interrupt-controller" for the node name then. 
> There doesn't seem to be an easy way to use just "interrupt-
> controller" 
> since you have 2 nodes at the same level and no unit-address (i.e. a 
> reg property).
> 

To be more clarify, what is better way do describe such hardware in
device tree?

-------------    -------------  
| cpu core 0|    | cpu core 1|  
-------------    -------------  
| interrupt |    | interrupt |  
| controller|    | controller|  
|     0     |    |     1     |  
-------------    -------------  
      ^                ^
      |                |
             -----------
      |      |
----------------
|   interrupt  |
| distribution |
|     unit     |
----------------
      ^
      |
      |<--other devices interrupt lines

We can't just create a node for each core interrupt controller because
we wouldn't able to specify which one is parent for interrupt
distribution unit:

------------>>>-------------
cpus {
    cpu@0 { intc@0 };
    cpu@1 { intc@1 };
};

interrupt-distribution-unit {
    interrupt-parent = ????
};
------------>>>-------------

Should we simply create one core interrupt controller node for all cpus
(instead of one per each cpu core), or where is a better option?

-- 
 Eugeniy Paltsev

  reply	other threads:[~2017-06-29 16:39 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-26 15:11 [PATCH 0/3 v6] hsdk: initial port for HSDK board Eugeniy Paltsev
2017-06-26 15:11 ` [PATCH 1/3 v6] ARC: Set IO-coherency aperture base to LINUX_LINK_BASE Eugeniy Paltsev
2017-06-26 15:11 ` [PATCH 2/3 v6] ARC: Decouple linux kernel memory address and link address Eugeniy Paltsev
2017-06-26 15:11 ` [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board Eugeniy Paltsev
2017-06-26 15:51   ` Rob Herring
2017-06-26 16:25     ` Alexey Brodkin
2017-06-27  4:25       ` stdout-path (was Re: [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board) Vineet Gupta
2017-06-28 22:50       ` [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board Rob Herring
2017-06-29 16:39         ` Eugeniy Paltsev [this message]
2017-06-29  7:27   ` Vineet Gupta

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=1498754384.2378.10.camel@synopsys.com \
    --to=eugeniy.paltsev@synopsys.com \
    --cc=Alexey.Brodkin@synopsys.com \
    --cc=Vineet.Gupta1@synopsys.com \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-snps-arc@lists.infradead.org \
    --cc=robh@kernel.org \
    /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).