diff options
author | Philippe Langlais <philippe.langlais@linaro.org> | 2011-04-14 16:49:35 +0200 |
---|---|---|
committer | Robert Marklund <robert.marklund@stericsson.com> | 2011-05-13 10:41:33 +0200 |
commit | d8c73ec926390643439b7d89aadb0cce2dd17ee9 (patch) | |
tree | 6d58c2027e8d9a4d811572149eb3c9c6cd77fc55 /drivers/mmc | |
parent | 798c0a55f9858f492c621085a466d0704239e640 (diff) |
MMCI: Use CLK_BYPASS together with NEG_EDGE
To make use of CLK_BYPASS bit in the MMCICLOCK register
the NEG_EDGE bit must be set as well to get a correct
clock signal.
ST-Ericsson ID: 325385
Change-Id: I86c9ec67b49c24621372984e0eca5963c339a6b0
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/17398
Reviewed-by: Sebastian RASMUSSEN <sebastian.rasmussen@stericsson.com>
Tested-by: Sebastian RASMUSSEN <sebastian.rasmussen@stericsson.com>
Conflicts:
drivers/mmc/host/mmci.c
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/mmci.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index a7bf8470231..00d6d8e61ca 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -222,10 +222,7 @@ static void mmci_stop_data(struct mmci_host *host) /* Needed for DDR */ if (host->mmc->card && mmc_card_ddr_mode(host->mmc->card)) { clk = readl(host->base + MMCICLOCK); - if (clk & MCI_ST_UX500_NEG_EDGE) - clk &= ~(MCI_ST_UX500_NEG_EDGE); - if (clk & MCI_ST_UX500_CLK_INV) - clk &= ~(MCI_ST_UX500_CLK_INV); + clk &= ~MCI_ST_UX500_NEG_EDGE; writel(clk, (host->base + MMCICLOCK)); } @@ -529,9 +526,7 @@ static void mmci_start_data(struct mmci_host *host, struct mmc_data *data) /* Needed for DDR */ clk = readl(base + MMCICLOCK); - clk |= MCI_ST_UX500_CLK_INV; - if ((data->flags & MMC_DATA_READ)) - clk |= MCI_ST_UX500_NEG_EDGE; + clk |= MCI_ST_UX500_NEG_EDGE; writel(clk, (base + MMCICLOCK)); } |