aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorMarek Vasut2015-10-23 20:46:29 +0200
committerAndreas Bießmann2015-11-01 22:02:15 +0100
commitecfb0ff81295933584da136da792c317063f7bcc (patch)
treeb50df5227e1929049b817d9ea577470a529180f7 /drivers/mmc
parentb84c9c9a988f9631f547222d2d43298c57149e3a (diff)
mmc: atmel: Fix clock configuration
After silencing the prints which were generated when reconfiguring the clock of the SD/MMC bus, surprisingly, the driver stopped working such that every attempt to use the SD/MMC bus caused the CPU to get totally stuck hard. It turns out that the prints generated a short delay, which was necessary for the CPU to reconfigure the clock without getting stuck. Thus, this patch adds a short delay after the clock configuration instead. Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Andreas Bießmann <andreas.devel@googlemail.com>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/gen_atmel_mci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mmc/gen_atmel_mci.c b/drivers/mmc/gen_atmel_mci.c
index a67fb501995..eb12bd04193 100644
--- a/drivers/mmc/gen_atmel_mci.c
+++ b/drivers/mmc/gen_atmel_mci.c
@@ -113,6 +113,8 @@ static void mci_set_mode(struct mmc *mmc, u32 hz, u32 blklen)
if (mmc->card_caps & mmc->cfg->host_caps & MMC_MODE_HS)
writel(MMCI_BIT(HSMODE), &mci->cfg);
+ udelay(50);
+
initialized = 1;
}