From: Eugeniy.Paltsev@synopsys.com (Eugeniy Paltsev)
To: linux-snps-arc@lists.infradead.org
Subject: [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@17:50 -0500, Rob Herring wrote:
> > > > +???????????????????????#clock-cells = <0>;
> > > > +???????????????????????compatible = "fixed-clock";
> > > > +???????????????????????clock-frequency = <1000000000>;
> > > > +???????????????};
> > > > +
> > > > +???????????????core_intc: archs-intc at 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 at 0 { intc at 0 };
????cpu at 1 { intc at 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
WARNING: multiple messages have this Message-ID (diff)
From: Eugeniy Paltsev <Eugeniy.Paltsev-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>
To: "robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org"
<robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"Vineet.Gupta1-HKixBCOQz3hWk0Htik3J/w@public.gmane.org"
<Vineet.Gupta1-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>,
"Eugeniy.Paltsev-HKixBCOQz3hWk0Htik3J/w@public.gmane.org"
<Eugeniy.Paltsev-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>,
"Alexey.Brodkin-HKixBCOQz3hWk0Htik3J/w@public.gmane.org"
<Alexey.Brodkin-HKixBCOQz3hWk0Htik3J/w@public.gmane.org>,
"linux-snps-arc-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-snps-arc-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.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>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 2516 bytes --]
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 PaltsevN§²æìr¸yúèØb²X¬¶Ç§vØ^)Þº{.nÇ+·zøzÚÞz)í
æèw*\x1fjg¬±¨\x1e¶Ý¢j.ïÛ°\½½MúgjÌæa×\x02' ©Þ¢¸\f¢·¦j:+v¨wèjØm¶ÿ¾\a«êçzZ+ùÝ¢j"ú!¶i
WARNING: multiple messages have this Message-ID (diff)
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
next prev parent reply other threads:[~2017-06-29 16:39 UTC|newest]
Thread overview: 29+ 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 ` Eugeniy Paltsev
2017-06-26 15:11 ` 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 ` Eugeniy Paltsev
2017-06-26 15:11 ` 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 ` Eugeniy Paltsev
2017-06-26 15:11 ` Eugeniy Paltsev
2017-06-26 15:11 ` [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board Eugeniy Paltsev
2017-06-26 15:11 ` Eugeniy Paltsev
2017-06-26 15:11 ` Eugeniy Paltsev
2017-06-26 15:51 ` Rob Herring
2017-06-26 15:51 ` Rob Herring
2017-06-26 15:51 ` Rob Herring
2017-06-26 16:25 ` Alexey Brodkin
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-27 4:25 ` Vineet Gupta
2017-06-27 4:25 ` Vineet Gupta
2017-06-28 22:50 ` [PATCH 3/3 v6] ARC: hsdk: initial port for HSDK board Rob Herring
2017-06-28 22:50 ` Rob Herring
2017-06-28 22:50 ` Rob Herring
2017-06-29 16:39 ` Eugeniy Paltsev [this message]
2017-06-29 16:39 ` Eugeniy Paltsev
2017-06-29 16:39 ` Eugeniy Paltsev
2017-06-29 7:27 ` Vineet Gupta
2017-06-29 7:27 ` Vineet Gupta
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=linux-snps-arc@lists.infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.