In v7, I've tried to change from a custom binding to use interrupt-map, modelled on the recent addition of the renesas,rza1-irqc (commits a644ccb819bc and 5e27a314a11f). It's possible that the interrupt-map parsing code can be factored to a common helper, but it's a bit hard to generalize from two examples to know what a good interface would look like. The interrupt-map-mask is a bit arbitrary. 0xff would likely work just as well (but I think the ls2088a has 32 external lines, so it has to be a least 0x1f). Also, this drops the fsl,bit-reverse property and instead reads the SCFGREVCR register to determine if bit-reversing is needed. The dt/bindings patch now comes first in accordance with Documentation/devicetree/bindings/submitting-patches.txt. Earlier versions can be found here: v6: https://lore.kernel.org/lkml/20190923101513.32719-1-kurt@xxxxxxxxxxxxx/ v5: https://lore.kernel.org/lkml/20180223210901.23480-1-rasmus.villemoes@xxxxxxxxx/ Rasmus Villemoes (2): dt/bindings: Add bindings for Layerscape external irqs irqchip: add support for Layerscape external interrupt lines .../interrupt-controller/fsl,ls-extirq.txt | 49 +++++ drivers/irqchip/Kconfig | 4 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-ls-extirq.c | 197 ++++++++++++++++++ 4 files changed, 251 insertions(+) create mode 100644 Documentation/devicetree/bindings/interrupt-controller/fsl,ls-extirq.txt create mode 100644 drivers/irqchip/irq-ls-extirq.c -- 2.23.0