History

mmc: dw_mmc: Fix DDR mode support.

Host driver can't get a hint of DDR mode through ios->ddr flag anymore. ios->timing is currently used to inform DDR mode as a substitute. And capability of MMC_CAP_MMC_HIGHSPEED is added for DDR support.

Seungwon Jeon committed 15 years ago

Commit 6daa7771 parent 7435bb71 file · +2 −2Browse files

Unified · Split

drivers/mmc/host/dw_mmc.c+2−2
@@ -699,7 +699,7 @@ static void dw_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) · 698 unmodified lines
699699 }
700700
701701 /* DDR mode set */
702− if (ios->ddr) {
702+ if (ios->timing == MMC_TIMING_UHS_DDR50) {
703703 regs = mci_readl(slot->host, UHS_REG);
704704 regs |= (0x1 << slot->id) << 16;
705705 mci_writel(slot->host, UHS_REG, regs);
@@ -1646,7 +1646,7 @@ static int __init dw_mci_init_slot(struct dw_mci *host, unsigned int id) · 940 unmodified lines
16461646 mmc->caps |= MMC_CAP_4_BIT_DATA;
16471647
16481648 if (host->pdata->quirks & DW_MCI_QUIRK_HIGHSPEED)
1649− mmc->caps |= MMC_CAP_SD_HIGHSPEED;
1649+ mmc->caps |= MMC_CAP_SD_HIGHSPEED | MMC_CAP_MMC_HIGHSPEED;
16501650
16511651 #ifdef CONFIG_MMC_DW_IDMAC
16521652 mmc->max_segs = host->ring_size;