From: Nicolas Pitre Date: Fri, 5 Mar 2010 21:43:34 +0000 (-0800) Subject: sdio: kick the interrupt thread upon a resume X-Git-Tag: v2.6.34-rc1~85 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=40216842dca4fa485cb1aa5eb231149a4a57cc85;p=~shefty%2Frdma-dev.git sdio: kick the interrupt thread upon a resume Some SDIO cards may suspend while keeping function interrupts active especially in the powered suspend case. Upon resume we need to kick the SDIO interrupt thread to check for pending interrupts and to restart card IRQ detection at the host controller level. Signed-off-by: Nicolas Pitre Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/mmc/core/sdio.c b/drivers/mmc/core/sdio.c index 7d8ba64b017..5840de106b6 100644 --- a/drivers/mmc/core/sdio.c +++ b/drivers/mmc/core/sdio.c @@ -441,6 +441,8 @@ static int mmc_sdio_resume(struct mmc_host *host) mmc_claim_host(host); err = mmc_sdio_init_card(host, host->ocr, host->card, (host->pm_flags & MMC_PM_KEEP_POWER)); + if (!err && host->sdio_irqs) + mmc_signal_sdio_irq(host); mmc_release_host(host); /*