sdhci-pci: enable SDIO interface on Intel Merrifield
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 29 Aug 2016 09:33:40 +0000 (12:33 +0300)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 26 Sep 2016 19:31:22 +0000 (21:31 +0200)
Intel Merrifield is known to have an SDIO interface and on Intel Edison board a
WiFi card is wired to it.

Enable the interface here to allow WiFi card enumeration.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-pci-core.c

index 40f4fe8..d38d701 100644 (file)
@@ -419,6 +419,7 @@ static const struct sdhci_pci_fixes sdhci_intel_byt_sd = {
 /* Define Host controllers for Intel Merrifield platform */
 #define INTEL_MRFLD_EMMC_0     0
 #define INTEL_MRFLD_EMMC_1     1
+#define INTEL_MRFLD_SDIO       3
 
 static int intel_mrfld_mmc_probe_slot(struct sdhci_pci_slot *slot)
 {
@@ -431,6 +432,10 @@ static int intel_mrfld_mmc_probe_slot(struct sdhci_pci_slot *slot)
                                         MMC_CAP_8_BIT_DATA |
                                         MMC_CAP_1_8V_DDR;
                break;
+       case INTEL_MRFLD_SDIO:
+               slot->host->mmc->caps |= MMC_CAP_NONREMOVABLE |
+                                        MMC_CAP_POWER_OFF_CARD;
+               break;
        default:
                /* SD support is not ready yet */
                return -ENODEV;