]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
irqchip/omap-intc: Add support for spurious irq handling
authorSekhar Nori <nsekhar@ti.com>
Tue, 15 Dec 2015 14:26:12 +0000 (19:56 +0530)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 6 Jan 2016 10:35:13 +0000 (11:35 +0100)
commitd3b421cd07e4c0d4d6c0bbd55ca169c054fc081d
treefc3e082b4bd7aaf798c495db3a2d5f838e2dea0d
parent1fd9a71076ccbcf731cf02408122600a6f2b5d17
irqchip/omap-intc: Add support for spurious irq handling

Under some conditions, irq sorting procedure used by INTC can go wrong
resulting in a spurious irq getting reported.

If this condition is not handled, it results in endless stream of:

    unexpected IRQ trap at vector 00

messages from ack_bad_irq()

Handle the spurious interrupt condition in omap-intc driver to prevent this.

Measurements using kernel function profiler on AM335x EVM running at 720MHz
show that after this patch omap_intc_handle_irq() takes about 37.4us against
34us before this patch.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: John Ogness <john.ogness@linutronix.de>
Cc: Felipe Balbi <balbi@ti.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Link: http://lkml.kernel.org/r/9c78a6db02ac55f7af7371b417b6e414d2c3095b.1450188128.git.nsekhar@ti.com
Cc: stable@vger.kernel.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/irqchip/irq-omap-intc.c