[PATCH v5 0/2] irqchip/mchp-eic: add driver for Microchip EIC

From: Claudiu Beznea
Date: Mon Sep 27 2021 - 02:37:44 EST


Hi,

This series adds support for Microchip External Interrupt Controller
present on SAMA7G5. The controller supports for 2 external interrupt
lines and is connected to GIC as follows:

pinX +------+ EXT_IRQ0 +------+ int 153 (for pinX) +------+
------>| |--------->| |------------------->| |
pinY | PIO | EXT_IRQ1 | EIC | int 154 (for pinY) | GIC |
------>| |--------->| |------------------->| |
+------+ +------+ +------+

where PIO is the pin controller.

Thank you,
Claudiu Beznea

Changes in v5:
- solved the issue with dt bindings (accidentally picked file from
v2 in previous version)

Changes in v4:
- use irq_domain_translate_twocell() instead of mchp_eic_domain_translate()
from v2
- use IRQCHIP_PLATFORM_DRIVER_BEGIN(), IRQCHIP_MATCH(),
IRQCHIP_PLATFORM_DRIVER_END() instead of builtin_platform_driver()
- register suspend/resume functins via syscore_ops; along with this
driver private data structure (of type struct mchp_eic has been declared
as static: struct mchp_eic *eic;)
- collected tags

Changes in v3:
- fix compilation warning on bindings

Changes in v2:
- s/mchp/microchip in bindings
- get rid of glitch filter settings
- use s/eic@/interrupt-controller@ in bindings
- removed '' around interrupts in bindings as proposed by Rob
- removed glitch filter settings
- switched to hierarchical irqchip driver
- addressed review comments
- use builtin_platform_driver instead of module_platform_driver

Claudiu Beznea (2):
dt-bindings: microchip,eic: add bindings
irqchip/mchp-eic: add support

.../interrupt-controller/microchip,eic.yaml | 73 +++++
MAINTAINERS | 6 +
drivers/irqchip/Kconfig | 8 +
drivers/irqchip/Makefile | 1 +
drivers/irqchip/irq-mchp-eic.c | 280 ++++++++++++++++++
5 files changed, 368 insertions(+)
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/microchip,eic.yaml
create mode 100644 drivers/irqchip/irq-mchp-eic.c

--
2.25.1