In preparation for moving the JZ4740 interrupt controller driver to
drivers/irqchip, move arch_init_irq into setup.c such that everything
remaining in irq.c is related to said JZ4740 interrupt controller.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Cc: Brian Norris <computersforpeace@gmail.com>
Patchwork: https://patchwork.linux-mips.org/patch/10136/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
#define NR_IRQS (JZ4740_IRQ_ADC_BASE + 6)
+extern void __init jz4740_intc_init(void);
+
#endif
#include <linux/types.h>
#include <linux/interrupt.h>
#include <linux/ioport.h>
-#include <linux/irqchip.h>
#include <linux/timex.h>
#include <linux/slab.h>
#include <linux/delay.h>
.name = "JZ4740 cascade interrupt",
};
-void __init arch_init_irq(void)
+void __init jz4740_intc_init(void)
{
struct irq_chip_generic *gc;
struct irq_chip_type *ct;
- irqchip_init();
-
jz_intc_base = ioremap(JZ4740_INTC_BASE_ADDR, 0x14);
/* Mask all irqs */
#include <linux/init.h>
#include <linux/io.h>
+#include <linux/irqchip.h>
#include <linux/kernel.h>
#include <linux/of_fdt.h>
#include <linux/of_platform.h>
#include <asm/prom.h>
#include <asm/mach-jz4740/base.h>
+#include <asm/mach-jz4740/irq.h>
#include "reset.h"
{
return "JZ4740";
}
+
+void __init arch_init_irq(void)
+{
+ irqchip_init();
+ jz4740_intc_init();
+}