summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYangbo Lu <yangbo.lu@freescale.com>2015-07-10 11:36:45 +0800
committerUlf Hansson <ulf.hansson@linaro.org>2015-08-17 11:32:46 +0200
commitf13e5b9f3c625916d7658ba526574a5d24e4d664 (patch)
treeae0516de2da20b2e05b36a777e7d5fc3e1830bd5
parent4c06654c47ee2ff5308b7e89994225ff81b48ef2 (diff)
downloadop-kernel-dev-f13e5b9f3c625916d7658ba526574a5d24e4d664.zip
op-kernel-dev-f13e5b9f3c625916d7658ba526574a5d24e4d664.tar.gz
mmc: sdio: avoid using NULL sdio_irq_thread pointer
For Freescale QorIQ LS1021AQDS board, there is a SDIO interrupt in the process of resume without inserting SD adapter because of some unknown issue. But the driver doesn't assign sdio_irq_thread pointer. This will block the resume of kernel. This patch is used to avoid using NULL sdio_irq_thread pointer. Signed-off-by: Yangbo Lu <yangbo.lu@freescale.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
-rw-r--r--include/linux/mmc/host.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
index 1369e54..83b81fd 100644
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -412,7 +412,8 @@ static inline void mmc_signal_sdio_irq(struct mmc_host *host)
{
host->ops->enable_sdio_irq(host, 0);
host->sdio_irq_pending = true;
- wake_up_process(host->sdio_irq_thread);
+ if (host->sdio_irq_thread)
+ wake_up_process(host->sdio_irq_thread);
}
void sdio_run_irqs(struct mmc_host *host);
OpenPOWER on IntegriCloud