@@ -1810,6 +1810,9 @@ static int __init dw_mci_init_slot(struct dw_mci *host, unsigned int id)
if (host->pdata->quirks & DW_MCI_QUIRK_HIGHSPEED)
mmc->caps |= MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED;
+ if (host->pdata->quirks & DW_MCI_QUIRK_DISABLE_MMC)
+ mmc->caps2 |= MMC_CAP2_NO_MMC;
+
if (mmc->caps2 & MMC_CAP2_POWEROFF_NOTIFY)
mmc->power_notify_type = MMC_HOST_PW_NOTIFY_SHORT;
else
@@ -201,6 +201,8 @@ struct dw_mci_dma_ops {
#define DW_MCI_QUIRK_HIGHSPEED BIT(2)
/* Unreliable card detection */
#define DW_MCI_QUIRK_BROKEN_CARD_DETECTION BIT(3)
+/* Only support SD cards, not MMC */
+#define DW_MCI_QUIRK_DISABLE_MMC BIT(4)
struct dma_pdata;
On some systems we need a way to disable MMC card support in a MMC/SD card slot. Add support in the dw_mmc to support this. Signed-off-by: Doug Anderson <dianders@chromium.org> --- drivers/mmc/host/dw_mmc.c | 3 +++ include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 5 insertions(+), 0 deletions(-)