]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: sdio_irq: rework sdio irq handling
authorRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 25 Apr 2014 11:55:30 +0000 (12:55 +0100)
committerChris Ball <chris@printf.net>
Thu, 22 May 2014 11:26:03 +0000 (07:26 -0400)
commitd0897550037198000d0594cdd90c1d796390af65
tree0aa1b43812cdde41d0a2de116951af61ee042fb7
parentf320c9c7fb7350a0232fe48908b6b92383b0f0e2
mmc: sdio_irq: rework sdio irq handling

Rather than the SDIO support spawning it's own thread for handling card
interrupts, use the generic IRQ infrastructure for this, triggering it
from the host interface's interrupt handling directly.

This avoids a race between the parent thread waiting to receive an
interrupt response from the card, and the slow startup from the sdio
irq thread, which can occur as a result of high system load (eg, while
udev is running.)

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tested-by: Markus Pargmann <mpa@pengutronix.de>
Tested-by: Stephen Warren <swarren@nvidia.com>
[Ulf Hansson] Resolved conflict
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <chris@printf.net>
drivers/mmc/core/sdio_irq.c
include/linux/mmc/host.h