|
@@ -707,12 +707,15 @@ static void dw_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
+ regs = mci_readl(slot->host, UHS_REG);
|
|
|
+
|
|
|
/* DDR mode set */
|
|
|
- if (ios->timing == MMC_TIMING_UHS_DDR50) {
|
|
|
- regs = mci_readl(slot->host, UHS_REG);
|
|
|
+ if (ios->timing == MMC_TIMING_UHS_DDR50)
|
|
|
regs |= (0x1 << slot->id) << 16;
|
|
|
- mci_writel(slot->host, UHS_REG, regs);
|
|
|
- }
|
|
|
+ else
|
|
|
+ regs &= ~(0x1 << slot->id) << 16;
|
|
|
+
|
|
|
+ mci_writel(slot->host, UHS_REG, regs);
|
|
|
|
|
|
if (ios->clock) {
|
|
|
/*
|