From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lokesh Vutla Subject: Re: [PATCH v5 00/10] Add support for TISCI irqchip drivers Date: Sat, 16 Feb 2019 09:07:12 +0530 Message-ID: References: <20190212074237.2875-1-lokeshvutla@ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20190212074237.2875-1-lokeshvutla@ti.com> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: marc.zyngier@arm.com, Tony Lindgren , Nishanth Menon , Santosh Shilimkar , Rob Herring , tglx@linutronix.de, jason@lakedaemon.net Cc: Device Tree Mailing List , Peter Ujfalusi , Sekhar Nori , linux-kernel@vger.kernel.org, Tero Kristo , Linux ARM Mailing List List-Id: devicetree@vger.kernel.org Hi Marc, On 2/12/2019 1:12 PM, Lokesh Vutla wrote: > TI AM65x SoC based on K3 architecture introduced support for Events > which are message based interrupts with minimal latency. These events > are not compatible with regular interrupts and are valid only through > an event transport lane. An Interrupt Aggregator(INTA) is introduced > to convert these events to interrupts. INTA can also group 64 events > into a single interrupt. Now the SoC has many peripherals and a large > number of event sources (time sync or DMA), the use of events is > completely dependent on a user's specific application, which drives a > need for maximum flexibility in which event sources are used in the > system. It is also completely up to software control as to how the > events are serviced. > > Because of the huge flexibility there are certain standard peripherals > (like GPIO etc)where all interrupts cannot be directly corrected to host > interrupt controller. For this purpose, Interrupt Router(INTR) is > introduced in the SoC. INTR just does a classic interrupt redirection. > > So the SoC has 3 types of interrupt controllers: > - GIC500 > - Interrupt Router > - Interrupt Aggregator > > Below is a diagrammatic view of how SoC integration of these interrupt > controllers:(https://pastebin.ubuntu.com/p/9ngV3jdGj2/) > > Device Index-x Device Index-y > | | > | | > .... > \ / > \ / > \ (global events) / > +---------------------------+ +---------+ > | | | | > | INTA | | GPIO | > | | | | > +---------------------------+ +---------+ > | (vint) | > | | > \|/ | > +---------------------------+ | > | |<-------+ > | INTR | > | | > +---------------------------+ > | > | > \|/ (gic irq) > +---------------------------+ > | | > | GIC | > | | > +---------------------------+ > > While at it, TISCI abstracts the handling of all above IRQ routes where > interrupt sources are not directly connected to host interrupt controller. > That would be configuration of Interrupt Aggregator and Interrupt Router. > > This series adds support for: > - TISCI commands needed for IRQ configuration > - Interrupt Router(INTR) and Interrupt Aggregator(INTA) drivers Sorry to bother you again. Any chance you can take a quick look at the series? Thanks and regards, Lokesh