Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 000bf9ee authored by Alexander Shiyan's avatar Alexander Shiyan Committed by Shawn Guo
Browse files

ARM: i.MX: Setup IRQ handler from IRQ driver



This patch moves IRQ handler setup to the its corresponded IRQ
driver (AVIC, TZIC).

Signed-off-by: default avatarAlexander Shiyan <shc_work@mail.ru>
Signed-off-by: default avatarShawn Guo <shawn.guo@freescale.com>
parent d4e7d942
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -135,7 +135,7 @@ static __init void avic_init_gc(int idx, unsigned int irq_start)
	irq_setup_generic_chip(gc, IRQ_MSK(32), 0, IRQ_NOREQUEST, 0);
}

asmlinkage void __exception_irq_entry avic_handle_irq(struct pt_regs *regs)
static void __exception_irq_entry avic_handle_irq(struct pt_regs *regs)
{
	u32 nivector;

@@ -190,6 +190,8 @@ void __init mxc_init_irq(void __iomem *irqbase)
	for (i = 0; i < 8; i++)
		__raw_writel(0, avic_base + AVIC_NIPRIORITY(i));

	set_handle_irq(avic_handle_irq);

#ifdef CONFIG_FIQ
	/* Initialize FIQ */
	init_FIQ(FIQ_START);
+0 −13
Original line number Diff line number Diff line
@@ -101,19 +101,6 @@ enum mx3_cpu_pwr_mode {
void mx3_cpu_lp_set(enum mx3_cpu_pwr_mode mode);
void imx_print_silicon_rev(const char *cpu, int srev);

void avic_handle_irq(struct pt_regs *);
void tzic_handle_irq(struct pt_regs *);

#define imx1_handle_irq avic_handle_irq
#define imx21_handle_irq avic_handle_irq
#define imx25_handle_irq avic_handle_irq
#define imx27_handle_irq avic_handle_irq
#define imx31_handle_irq avic_handle_irq
#define imx35_handle_irq avic_handle_irq
#define imx50_handle_irq tzic_handle_irq
#define imx51_handle_irq tzic_handle_irq
#define imx53_handle_irq tzic_handle_irq

void imx_enable_cpu(int cpu, bool enable);
void imx_set_cpu_jump(int cpu, void *jump_addr);
u32 imx_get_cpu_arg(int cpu);
+0 −1
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)")
	.map_io		= mx25_map_io,
	.init_early	= imx25_init_early,
	.init_irq	= mx25_init_irq,
	.handle_irq	= imx25_handle_irq,
	.init_time	= imx25_timer_init,
	.init_machine	= imx25_dt_init,
	.dt_compat	= imx25_dt_board_compat,
+0 −1
Original line number Diff line number Diff line
@@ -43,7 +43,6 @@ DT_MACHINE_START(IMX27_DT, "Freescale i.MX27 (Device Tree Support)")
	.map_io		= mx27_map_io,
	.init_early	= imx27_init_early,
	.init_irq	= mx27_init_irq,
	.handle_irq	= imx27_handle_irq,
	.init_time	= imx27_timer_init,
	.init_machine	= imx27_dt_init,
	.dt_compat	= imx27_dt_board_compat,
+0 −1
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@ DT_MACHINE_START(IMX31_DT, "Freescale i.MX31 (Device Tree Support)")
	.map_io		= mx31_map_io,
	.init_early	= imx31_init_early,
	.init_irq	= mx31_init_irq,
	.handle_irq	= imx31_handle_irq,
	.init_time	= imx31_dt_timer_init,
	.init_machine	= imx31_dt_init,
	.dt_compat	= imx31_dt_board_compat,
Loading