diff options
author | Seungwon Jeon <tgih.jun@samsung.com> | 2011-08-04 23:35:03 -0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-08-13 14:50:32 -0400 |
commit | 6daa777866569fc48fe3cfcd6fd01aba37ac06a5 (patch) | |
tree | 14fae64bfccda79561294df1188619e3dd78d595 /drivers/mmc | |
parent | 7435bb7950ba8a3cbfa6d0c01e92588562533a3f (diff) |
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.
Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com>
Acked-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/dw_mmc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c index f13bb49dbc71..ff0f714b012c 100644 --- a/drivers/mmc/host/dw_mmc.c +++ b/drivers/mmc/host/dw_mmc.c | |||
@@ -699,7 +699,7 @@ static void dw_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) | |||
699 | } | 699 | } |
700 | 700 | ||
701 | /* DDR mode set */ | 701 | /* DDR mode set */ |
702 | if (ios->ddr) { | 702 | if (ios->timing == MMC_TIMING_UHS_DDR50) { |
703 | regs = mci_readl(slot->host, UHS_REG); | 703 | regs = mci_readl(slot->host, UHS_REG); |
704 | regs |= (0x1 << slot->id) << 16; | 704 | regs |= (0x1 << slot->id) << 16; |
705 | mci_writel(slot->host, UHS_REG, regs); | 705 | 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) | |||
1646 | mmc->caps |= MMC_CAP_4_BIT_DATA; | 1646 | mmc->caps |= MMC_CAP_4_BIT_DATA; |
1647 | 1647 | ||
1648 | if (host->pdata->quirks & DW_MCI_QUIRK_HIGHSPEED) | 1648 | 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; |
1650 | 1650 | ||
1651 | #ifdef CONFIG_MMC_DW_IDMAC | 1651 | #ifdef CONFIG_MMC_DW_IDMAC |
1652 | mmc->max_segs = host->ring_size; | 1652 | mmc->max_segs = host->ring_size; |