diff options
author | Bo Shen <voice.shen@atmel.com> | 2014-07-31 14:39:32 +0800 |
---|---|---|
committer | Pantelis Antoniou <panto@antoniou-consulting.com> | 2014-08-01 20:01:33 +0300 |
commit | da55c66ec92c962435175cf0b4f4d61732ca3ebf (patch) | |
tree | c145e12c9e74792ad7c0601eb8f80cf85993597d | |
parent | 70ec3286e654a97ba7a6685a45563b1546a8c2b9 (diff) | |
download | u-boot-imx-da55c66ec92c962435175cf0b4f4d61732ca3ebf.zip u-boot-imx-da55c66ec92c962435175cf0b4f4d61732ca3ebf.tar.gz u-boot-imx-da55c66ec92c962435175cf0b4f4d61732ca3ebf.tar.bz2 |
MMC: atmel_mci: enable high speed mode support
If the MCI IP version >= 0x300, it supports hight speed mode
option, this patch enable it.
Signed-off-by: Bo Shen <voice.shen@atmel.com>
Acked-by: Pantelis Antoniou <panto@antoniou-consulting.com>
-rw-r--r-- | drivers/mmc/gen_atmel_mci.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/mmc/gen_atmel_mci.c b/drivers/mmc/gen_atmel_mci.c index 8778a4d..45bcffb 100644 --- a/drivers/mmc/gen_atmel_mci.c +++ b/drivers/mmc/gen_atmel_mci.c @@ -110,6 +110,9 @@ static void mci_set_mode(struct mmc *mmc, u32 hz, u32 blklen) if (version >= 0x200) writel(MMCI_BF(BLKLEN, blklen), &mci->blkr); + if (mmc->card_caps & mmc->cfg->host_caps & MMC_MODE_HS) + writel(MMCI_BIT(HSMODE), &mci->cfg); + initialized = 1; } @@ -404,8 +407,10 @@ int atmel_mci_init(void *regs) /* need to be able to pass these in on a board by board basis */ cfg->voltages = MMC_VDD_32_33 | MMC_VDD_33_34; version = atmel_mci_get_version(mci); - if ((version & 0xf00) >= 0x300) + if ((version & 0xf00) >= 0x300) { cfg->host_caps = MMC_MODE_8BIT; + cfg->host_caps |= MMC_MODE_HS | MMC_MODE_HS_52MHz; + } cfg->host_caps |= MMC_MODE_4BIT; |