[PATCH 2/2] ARM: mcx: fix local timer interrupt handling
Shawn Guo
shawn.guo at linaro.org
Thu Nov 3 00:35:18 EDT 2011
On 3 November 2011 01:30, Marc Zyngier <marc.zyngier at arm.com> wrote:
> As local timer interrupts are now handled as normal interrupts,
> remove the special case in the GIC handler.
>
> Cc: Shawn Guo <shawn.guo at linaro.org>
> Cc: Sascha Hauer <kernel at pengutronix.de>
> Signed-off-by: Marc Zyngier <marc.zyngier at arm.com>
I also noticed this problem and had a patch fixing it. But due to the
tight Linaro Connect agenda, I have not got the chance to send it out.
Glad to see this patch fixing the problem.
Acked-and-tested-by: Shawn Guo <shawn.guo at linaro.org>
> ---
> arch/arm/plat-mxc/gic.c | 11 ++---------
> 1 files changed, 2 insertions(+), 9 deletions(-)
>
> diff --git a/arch/arm/plat-mxc/gic.c b/arch/arm/plat-mxc/gic.c
> index b3b8eed..12f8f81 100644
> --- a/arch/arm/plat-mxc/gic.c
> +++ b/arch/arm/plat-mxc/gic.c
> @@ -28,21 +28,14 @@ asmlinkage void __exception_irq_entry gic_handle_irq(struct pt_regs *regs)
> if (irqnr == 1023)
> break;
>
> - if (irqnr > 29 && irqnr < 1021)
> + if (irqnr > 15 && irqnr < 1021)
> handle_IRQ(irqnr, regs);
> #ifdef CONFIG_SMP
> - else if (irqnr < 16) {
> + else {
> writel_relaxed(irqstat, gic_cpu_base_addr +
> GIC_CPU_EOI);
> handle_IPI(irqnr, regs);
> }
> #endif
> -#ifdef CONFIG_LOCAL_TIMERS
> - else if (irqnr == 29) {
> - writel_relaxed(irqstat, gic_cpu_base_addr +
> - GIC_CPU_EOI);
> - handle_local_timer(regs);
> - }
> -#endif
> } while (1);
> }
> --
> 1.7.0.4
>
>
>
--
Regards,
Shawn
More information about the linux-arm-kernel
mailing list