|
|
Log in / Subscribe / Register

Add TI PRUSS Local Interrupt Controller IRQChip driver

From:  Suman Anna <s-anna-AT-ti.com>
To:  Marc Zyngier <maz-AT-kernel.org>, Thomas Gleixner <tglx-AT-linutronix.de>, Jason Cooper <jason-AT-lakedaemon.net>
Subject:  [PATCH v2 0/6] Add TI PRUSS Local Interrupt Controller IRQChip driver
Date:  Wed, 31 Jul 2019 17:41:43 -0500
Message-ID:  <20190731224149.11153-1-s-anna@ti.com>
Cc:  Rob Herring <robh+dt-AT-kernel.org>, David Lechner <david-AT-lechnology.com>, Tony Lindgren <tony-AT-atomide.com>, "Andrew F. Davis" <afd-AT-ti.com>, Roger Quadros <rogerq-AT-ti.com>, Lokesh Vutla <lokeshvutla-AT-ti.com>, Grygorii Strashko <grygorii.strashko-AT-ti.com>, Sekhar Nori <nsekhar-AT-ti.com>, Murali Karicheri <m-karicheri2-AT-ti.com>, <devicetree-AT-vger.kernel.org>, <linux-omap-AT-vger.kernel.org>, <linux-arm-kernel-AT-lists.infradead.org>, <linux-kernel-AT-vger.kernel.org>, Suman Anna <s-anna-AT-ti.com>
Archive-link:  Article

Hi All,

The following is a v2 version of the series [1] that adds an IRQChip driver for
the local interrupt controller present within a Programmable Real-Time Unit and
Industrial Communication Subsystem (PRU-ICSS) present on a number of TI SoCs 
including OMAP architecture based AM335x, AM437x, AM57xx SoCs, Keystone 2 
architecture based 66AK2G SoCs, Davinci architecture based OMAP-L138/DA850 SoCs
and the latest K3 architecture based AM65x and J721E SoCs. Please see the
v1 cover-letter [1] for details about the features of this interrupt controller.
More details can be found in any of the supported SoC TRMs.
 Eg: Chapter 30.1.6 of AM5728 TRM [2]

Please see the individual patches for exact changes in each patch, following are
the main changes from v1:
 - Dropped the pruss_intc_trigger() API and patch and replaced it with a new
   patch achieving the same through irq_set_irqchip_state() callback (patch 5)
 - Added cleanup logic on INTC mapping fails and reset the mapping registers
   during unmap (patch 4)
 - Minor revisions to the bindings, no new properties introduced (patch 1)

regards
Suman

[1] https://patchwork.kernel.org/cover/11034561/
[2] http://www.ti.com/lit/pdf/spruhz6

Andrew F. Davis (1):
  irqchip/irq-pruss-intc: Add a PRUSS irqchip driver for PRUSS
    interrupts

David Lechner (1):
  irqchip/irq-pruss-intc: Implement irq_{get,set}_irqchip_state ops

Suman Anna (4):
  dt-bindings: irqchip: Add PRUSS interrupt controller bindings
  irqchip/irq-pruss-intc: Add support for shared and invalid interrupts
  irqchip/irq-pruss-intc: Add helper functions to configure internal
    mapping
  irqchip/irq-pruss-intc: Add support for ICSSG INTC on K3 SoCs

 .../interrupt-controller/ti,pruss-intc.txt    |  98 +++
 drivers/irqchip/Kconfig                       |  10 +
 drivers/irqchip/Makefile                      |   1 +
 drivers/irqchip/irq-pruss-intc.c              | 764 ++++++++++++++++++
 include/linux/irqchip/irq-pruss-intc.h        |  36 +
 5 files changed, 909 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc.txt
 create mode 100644 drivers/irqchip/irq-pruss-intc.c
 create mode 100644 include/linux/irqchip/irq-pruss-intc.h

-- 
2.22.0



Copyright © 2019, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds