[PATCH v4 3/7] arm/imx: add gic_handle_irq function
Russell King - ARM Linux
linux at arm.linux.org.uk
Thu Sep 29 05:34:09 EDT 2011
On Wed, Sep 28, 2011 at 05:06:44PM +0800, Shawn Guo wrote:
> +#ifdef CONFIG_SMP
> + else if (irqnr < 16) {
> + writel_relaxed(irqstat, gic_cpu_base_addr +
> + GIC_CPU_EOI);
> + do_IPI(irqnr, regs);
> + }
> +#endif
> +#ifdef CONFIG_LOCAL_TIMERS
> + else if (irqnr == 29) {
> + writel_relaxed(irqstat, gic_cpu_base_addr +
> + GIC_CPU_EOI);
> + do_local_timer(regs);
> + }
> +#endif
As I've said for similar patches. neither of these two functions are
designed to be called from another C function (because they're marked
__exception or __exception_irq_entry). Both of these markers tell the
unwinder that a struct pt_regs is located directly above the functions
stack frame.
More information about the linux-arm-kernel
mailing list