From: Marc Zyngier <marc.zyngier@arm.com>
To: Roger Quadros <rogerq@ti.com>
Cc: Linus Walleij <linus.walleij@linaro.org>,
Suman Anna <s-anna@ti.com>, Lokesh Vutla <lokeshvutla@ti.com>,
ext Tony Lindgren <tony@atomide.com>,
Ohad Ben-Cohen <ohad@wizery.com>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
David Lechner <david@lechnology.com>,
"Nori, Sekhar" <nsekhar@ti.com>, Tero Kristo <t-kristo@ti.com>,
nsaulnier@ti.com, jreeder@ti.com,
Murali Karicheri <m-karicheri2@ti.com>,
woods.technical@gmail.com,
Linux-OMAP <linux-omap@vger.kernel.org>,
linux-remoteproc@vger.kernel.org,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@vger.kernel.org>
Subject: Re: [PATCH v2 01/14] dt-bindings: remoteproc: Add TI PRUSS bindings
Date: Thu, 14 Feb 2019 12:52:30 +0000 [thread overview]
Message-ID: <86ef8asfap.wl-marc.zyngier@arm.com> (raw)
In-Reply-To: <5C65490E.6000800@ti.com>
On Thu, 14 Feb 2019 10:55:10 +0000,
Roger Quadros <rogerq@ti.com> wrote:
>
>
> On 14/02/19 10:37, Linus Walleij wrote:
> > On Thu, Feb 14, 2019 at 4:13 AM Suman Anna <s-anna@ti.com> wrote:
> >> [Me]
> >
> >>> To be able to use hierarchical interrupt domain in the kernel, the top
> >>> interrupt controller must use the hierarchical (v2) irqdomain, so
> >>> if this is anything else than the ARM GIC it will be an interesting
> >>> undertaking to handle this.
> >>
> >> These are interrupt lines coming towards the host processor running
> >> Linux and are directly connected to the ARM GIC. This INTC module is
> >> actually an PRUSS internal interrupt controller that can take in 64 (on
> >> most SoCs) external events/interrupt sources and multiplexing them
> >> through two layers of many-to-one events-to-intr channels &
> >> intr-channels-to-host interrupts. Couple of the host interrupts go to
> >> the PRU cores themselves while the remaining ones come out of the IP to
> >> connect to other GICs in the SoC.
> >
> > If the muxing is static (like set up once at probe) so that while
> > the system is running, there is one and one only event mapped to
> > the GIC from the component below it, then it is hierarchical.
>
> This is how it looks.
>
> [GIC]<---8---[INTC]<---64---[events from peripherals]
>
> The 8 interrupt lines from INTC to the GIC are 1:1 mapped and fixed
> per SoC. The muxing between 64 inputs to INTC and its 8 outputs are
> programmable and might not necessarily be static per boot/probe as
> it depends on what firmware is loaded on the PRU.
But the point is that at any given time, there are at most 8 out of 64
inputs that are used, right? You *never* end-up with two (or more) of
these "events" being multiplexed on a single output line.
If these assertions do hold, then your design is typical of a
hierarchy, for which we have countless examples in the tree (including
for some TI HW).
Thanks,
M.
--
Jazz is not dead, it just smell funny.
next prev parent reply other threads:[~2019-02-14 12:52 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-04 14:22 [PATCH v2 00/14] Add support for TI PRU ICSS Roger Quadros
2019-02-04 14:22 ` [PATCH v2 01/14] dt-bindings: remoteproc: Add TI PRUSS bindings Roger Quadros
2019-02-04 16:33 ` Tony Lindgren
2019-02-05 9:39 ` Roger Quadros
2019-02-05 15:08 ` Murali Karicheri
2019-02-05 15:41 ` Roger Quadros
2019-02-05 16:15 ` Murali Karicheri
2019-02-05 16:19 ` Tony Lindgren
2019-02-06 15:04 ` Roger Quadros
2019-02-14 2:47 ` Suman Anna
2019-02-05 16:41 ` Tony Lindgren
2019-02-14 3:01 ` Suman Anna
2019-02-08 13:51 ` Linus Walleij
2019-02-14 3:12 ` Suman Anna
2019-02-14 8:37 ` Linus Walleij
2019-02-14 10:55 ` Roger Quadros
2019-02-14 12:52 ` Marc Zyngier [this message]
2019-02-14 15:44 ` Roger Quadros
2019-02-14 15:48 ` Roger Quadros
2019-02-15 0:59 ` Suman Anna
2019-02-20 9:51 ` Linus Walleij
2019-02-14 15:51 ` Marc Zyngier
2019-02-14 16:50 ` Roger Quadros
2019-02-14 9:47 ` Marc Zyngier
2019-02-14 2:52 ` Suman Anna
2019-02-14 11:08 ` Roger Quadros
2019-02-14 15:56 ` Tony Lindgren
2019-02-15 1:22 ` Suman Anna
2019-02-15 1:08 ` Suman Anna
2019-02-15 13:43 ` Matthijs van Duin
2019-02-04 14:22 ` [PATCH v2 02/14] soc: ti: pruss: Add a platform driver for PRUSS in TI SoCs Roger Quadros
2019-02-04 14:52 ` Andrew F. Davis
2019-02-04 15:32 ` Roger Quadros
2019-02-04 16:35 ` Tony Lindgren
2019-02-04 14:22 ` [PATCH v2 03/14] dt-binding: irqchip: Add pruss-intc-irq driver for PRUSS interrupts Roger Quadros
2019-02-04 16:36 ` Tony Lindgren
2019-02-14 2:40 ` Suman Anna
2019-02-18 19:32 ` Rob Herring
2019-02-04 14:22 ` [PATCH v2 04/14] irqchip: pruss: Add a PRUSS irqchip " Roger Quadros
2019-02-04 15:11 ` Andrew F. Davis
2019-02-04 15:33 ` Roger Quadros
2019-02-05 8:51 ` Roger Quadros
2019-02-14 2:15 ` Suman Anna
2019-02-04 18:15 ` Tony Lindgren
2019-02-05 10:35 ` Roger Quadros
2019-02-05 11:04 ` Marc Zyngier
2019-02-14 2:16 ` Suman Anna
2019-02-04 14:22 ` [PATCH v2 05/14] remoteproc: add map parameter to da_to_va Roger Quadros
2019-02-04 14:22 ` [PATCH v2 06/14] remoteproc: add page lookup for TI PRU to ELF loader Roger Quadros
2019-02-04 15:19 ` Andrew F. Davis
2019-02-14 2:22 ` Suman Anna
2019-02-04 14:22 ` [PATCH v2 07/14] remoteproc: Add a rproc_set_firmware() API Roger Quadros
2019-02-04 14:22 ` [PATCH v2 08/14] remoteproc: Add support to handle device specific resource types Roger Quadros
2019-02-04 14:22 ` [PATCH v2 09/14] dt-binding: remoteproc: Add binding doc for PRU Cores in the PRU-ICSS Roger Quadros
2019-02-18 19:36 ` Rob Herring
2019-02-04 14:22 ` [PATCH v2 10/14] remoteproc/pru: Add PRU remoteproc driver Roger Quadros
2019-02-14 2:35 ` Suman Anna
2019-02-14 3:44 ` Suman Anna
2019-02-04 14:22 ` [PATCH v2 11/14] remoteproc/pru: Add pru_rproc_set_ctable() and pru_rproc_set_gpimode() Roger Quadros
2019-02-04 14:22 ` [PATCH v2 12/14] remoteproc/pru: Add support for virtio rpmsg stack Roger Quadros
2019-02-04 14:22 ` [PATCH v2 13/14] rpmsg: virtio_rpmsg_bus: move back rpmsg_hdr into a public header Roger Quadros
2019-02-04 14:22 ` [PATCH v2 14/14] rpmsg: pru: add a PRU RPMsg driver Roger Quadros
2019-02-04 15:26 ` Andrew F. Davis
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=86ef8asfap.wl-marc.zyngier@arm.com \
--to=marc.zyngier@arm.com \
--cc=bjorn.andersson@linaro.org \
--cc=david@lechnology.com \
--cc=devicetree@vger.kernel.org \
--cc=jreeder@ti.com \
--cc=linus.walleij@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=lokeshvutla@ti.com \
--cc=m-karicheri2@ti.com \
--cc=nsaulnier@ti.com \
--cc=nsekhar@ti.com \
--cc=ohad@wizery.com \
--cc=rogerq@ti.com \
--cc=s-anna@ti.com \
--cc=t-kristo@ti.com \
--cc=tony@atomide.com \
--cc=woods.technical@gmail.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