]> git.baikalelectronics.ru Git - kernel.git/commit
genirq: Handle pending irqs in irq_startup()
authorThomas Gleixner <tglx@linutronix.de>
Wed, 8 Feb 2012 10:57:52 +0000 (11:57 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 15 Feb 2012 10:56:59 +0000 (11:56 +0100)
commit4ccc6e44887b7f3c30e77df78c8adfde664eddd0
tree81f2ba0bcbb1ac50837c1c0e5ae8b606e22d47da
parentaaa0a520baa808eefd33ffed799b8ec71dc75fea
genirq: Handle pending irqs in irq_startup()

An interrupt might be pending when irq_startup() is called, but the
startup code does not invoke the resend logic. In some cases this
prevents the device from issuing another interrupt which renders the
device non functional.

Call the resend function in irq_startup() to keep things going.

Reported-and-tested-by: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: stable@vger.kernel.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
kernel/irq/autoprobe.c
kernel/irq/chip.c
kernel/irq/internals.h
kernel/irq/manage.c