aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/mmci.c
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2011-04-01 02:59:17 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-05-12 05:15:25 -0400
commit399bc4863e2a3b4b255ca22189820c81ca34f4e0 (patch)
treeb66d7e5b15a35f3ca377d6494f70f43774a40f44 /drivers/mmc/host/mmci.c
parent49ac215e071234b2bf2cff7b8bf4f4f3d0e8cd6e (diff)
ARM: 6858/1: mmci: force negative edge on clock bypass for ux500
This fixes a regression on high clock speeds with the MMCI on ux500. We need to make sure we derive the passthru clock on the falling edge of the incoming clock if it shall work at high frequencies, and on the ux500's there is a special bit for this. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/mmc/host/mmci.c')
-rw-r--r--drivers/mmc/host/mmci.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index 92061f8df31e..4941e06fe2e1 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -103,6 +103,8 @@ static void mmci_set_clkreg(struct mmci_host *host, unsigned int desired)
103 if (desired) { 103 if (desired) {
104 if (desired >= host->mclk) { 104 if (desired >= host->mclk) {
105 clk = MCI_CLK_BYPASS; 105 clk = MCI_CLK_BYPASS;
106 if (variant->st_clkdiv)
107 clk |= MCI_ST_UX500_NEG_EDGE;
106 host->cclk = host->mclk; 108 host->cclk = host->mclk;
107 } else if (variant->st_clkdiv) { 109 } else if (variant->st_clkdiv) {
108 /* 110 /*