瀏覽代碼

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>
Yangbo Lu 10 年之前
父節點
當前提交
f13e5b9f3c
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      include/linux/mmc/host.h

+ 2 - 1
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->ops->enable_sdio_irq(host, 0);
 	host->sdio_irq_pending = true;
 	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);
 void sdio_run_irqs(struct mmc_host *host);