| From 4f6c90b1bccdac2ad7006ce48104163a455b96de Mon Sep 17 00:00:00 2001 |
| From: Haibo Chen <haibo.chen@nxp.com> |
| Date: Wed, 19 Feb 2020 16:22:40 +0800 |
| Subject: [PATCH] mmc: sdhci: do not enable card detect interrupt for gpio cd |
| type |
| |
| commit e65bb38824711559844ba932132f417bc5a355e2 upstream. |
| |
| Except SDHCI_QUIRK_BROKEN_CARD_DETECTION and MMC_CAP_NONREMOVABLE, |
| we also do not need to handle controller native card detect interrupt |
| for gpio cd type. |
| If we wrong enabled the card detect interrupt for gpio case, it will |
| cause a lot of unexpected card detect interrupts during data transfer |
| which should not happen. |
| |
| Signed-off-by: Haibo Chen <haibo.chen@nxp.com> |
| Acked-by: Adrian Hunter <adrian.hunter@intel.com> |
| Reviewed-by: Linus Walleij <linus.walleij@linaro.org> |
| Link: https://lore.kernel.org/r/1582100563-20555-2-git-send-email-haibo.chen@nxp.com |
| Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c |
| index 89ff43b43de9..5a8d97a8f1e1 100644 |
| --- a/drivers/mmc/host/sdhci.c |
| +++ b/drivers/mmc/host/sdhci.c |
| @@ -152,7 +152,7 @@ static void sdhci_set_card_detection(struct sdhci_host *host, bool enable) |
| u32 present; |
| |
| if ((host->quirks & SDHCI_QUIRK_BROKEN_CARD_DETECTION) || |
| - !mmc_card_is_removable(host->mmc)) |
| + !mmc_card_is_removable(host->mmc) || mmc_can_gpio_cd(host->mmc)) |
| return; |
| |
| if (enable) { |
| -- |
| 2.27.0 |
| |