Hi, The MIPS based Xilfpga platform uses the axi interrupt controller daisy chained to the MIPS microAptiv cpu interrupt controller. This patch series moves the axi interrupt controller driver out of arch/microblaze to drivers/irqchip and then cleans it up a bit. And then remove another implementation of the driver in arch/powerpc. This makes one common driver usable by mips,microblaze and powerpc. The rest of the series basically enables drivers and adds dt nodes. Would make sense for this to go via the MIPS tree. Hence, ACKs from microblaze, powerpc and irqchip welcome. Compile tested on microblaze-el. Tested using qemu-system-ppc using virtix440-ml507 Based on v4.9-rc1 Regards, ZubairLK V4 -> V5 Added a new patch that removes the PPC driver Rebase to v4.9-rc1 Better error handling V3 -> V4 Better error handling Some minor fixups V2 -> V3 Cleanup the interrupt controller driver a bit based on feedback Rebase to v4.8-rc4 V1 -> V2 Resubmitting without truncating the diff output for file moves Removed accidental local mac address entry Individual logs have more detail Zubair Lutfullah Kakakhel (12): microblaze: irqchip: Move intc driver to irqchip irqchip: xilinx: Clean up irqdomain argument and read/write irqchip: xilinx: Rename get_irq to xintc_get_irq irqchip: xilinx: Add support for parent intc irqchip: xilinx: Try to fall back if xlnx,kind-of-intr not provided powerpc/virtex: Use generic xilinx irqchip driver MIPS: xilfpga: Use irqchip instead of the legacy way MIPS: xilfpga: Use Xilinx Interrupt Controller MIPS: xilfpga: Update DT node and specify uart irq MIPS: xilfpga: Add DT node for AXI I2C MIPS: xilfpga: Add DT node for AXI emaclite MIPS: xilfpga: Update defconfig arch/microblaze/Kconfig | 1 + arch/microblaze/include/asm/irq.h | 2 +- arch/microblaze/kernel/Makefile | 2 +- arch/microblaze/kernel/intc.c | 196 ----------------------- arch/microblaze/kernel/irq.c | 4 +- arch/mips/Kconfig | 1 + arch/mips/boot/dts/xilfpga/nexys4ddr.dts | 63 ++++++++ arch/mips/configs/xilfpga_defconfig | 37 ++++- arch/mips/xilfpga/intc.c | 7 +- arch/powerpc/include/asm/xilinx_intc.h | 2 +- arch/powerpc/platforms/40x/Kconfig | 1 + arch/powerpc/platforms/40x/virtex.c | 2 +- arch/powerpc/platforms/44x/Kconfig | 1 + arch/powerpc/platforms/44x/virtex.c | 2 +- arch/powerpc/sysdev/xilinx_intc.c | 211 +------------------------ drivers/irqchip/Kconfig | 4 + drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-xilinx-intc.c | 258 +++++++++++++++++++++++++++++++ 18 files changed, 377 insertions(+), 418 deletions(-) delete mode 100644 arch/microblaze/kernel/intc.c create mode 100644 drivers/irqchip/irq-xilinx-intc.c -- 1.9.1