[RFC PATCH 17/21] mmc: sdhci-pci-core: remove SDHCI_QUIRK_BROKEN_CARD_DETECTION

From: Shawn Lin
Date: Wed Jan 27 2016 - 00:13:45 EST


This patch remove SDHCI_QUIRK_BROKEN_CARD_DETECTION and add
MMC_CAP_NEEDS_POLL for PCI_DEVICE_ID_MARVELL_88ALP01_SD

Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
---

drivers/mmc/host/sdhci-pci-core.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/mmc/host/sdhci-pci-core.c b/drivers/mmc/host/sdhci-pci-core.c
index cc851b0..1f6d3f6 100644
--- a/drivers/mmc/host/sdhci-pci-core.c
+++ b/drivers/mmc/host/sdhci-pci-core.c
@@ -101,7 +101,6 @@ static const struct sdhci_pci_fixes sdhci_ene_714 = {
static const struct sdhci_pci_fixes sdhci_cafe = {
.quirks = SDHCI_QUIRK_NO_SIMULT_VDD_AND_POWER |
SDHCI_QUIRK_NO_BUSY_IRQ |
- SDHCI_QUIRK_BROKEN_CARD_DETECTION |
SDHCI_QUIRK_BROKEN_TIMEOUT_VAL,
};

@@ -1612,6 +1611,10 @@ static struct sdhci_pci_slot *sdhci_pci_probe_slot(
host->quirks = chip->quirks;
host->quirks2 = chip->quirks2;

+ if ((chip->pdev->vendor == PCI_VENDOR_ID_MARVELL) &&
+ (chip->pdev->device == PCI_DEVICE_ID_MARVELL_88ALP01_SD))
+ host->mmc->caps |= MMC_CAP_NEEDS_POLL;
+
host->irq = pdev->irq;

ret = pci_request_region(pdev, bar, mmc_hostname(host->mmc));
--
2.3.7