Commit 01167c7b authored by Stefan Wahren's avatar Stefan Wahren Committed by Ulf Hansson

mmc: mxs-mmc: Fix additional cycles after transmission stop

According to the code the intention is to append 8 SCK cycles
instead of 4 at end of a MMC_STOP_TRANSMISSION command. But this
will never happened because it's an AC command not an ADTC command.
So fix this by moving the statement into the right function.
Signed-off-by: default avatarStefan Wahren <stefan.wahren@i2se.com>
Fixes: e4243f13 (mmc: mxs-mmc: add mmc host driver for i.MX23/28)
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent e1d070c3
...@@ -309,6 +309,9 @@ static void mxs_mmc_ac(struct mxs_mmc_host *host) ...@@ -309,6 +309,9 @@ static void mxs_mmc_ac(struct mxs_mmc_host *host)
cmd0 = BF_SSP(cmd->opcode, CMD0_CMD); cmd0 = BF_SSP(cmd->opcode, CMD0_CMD);
cmd1 = cmd->arg; cmd1 = cmd->arg;
if (cmd->opcode == MMC_STOP_TRANSMISSION)
cmd0 |= BM_SSP_CMD0_APPEND_8CYC;
if (host->sdio_irq_en) { if (host->sdio_irq_en) {
ctrl0 |= BM_SSP_CTRL0_SDIO_IRQ_CHECK; ctrl0 |= BM_SSP_CTRL0_SDIO_IRQ_CHECK;
cmd0 |= BM_SSP_CMD0_CONT_CLKING_EN | BM_SSP_CMD0_SLOW_CLKING_EN; cmd0 |= BM_SSP_CMD0_CONT_CLKING_EN | BM_SSP_CMD0_SLOW_CLKING_EN;
...@@ -417,8 +420,7 @@ static void mxs_mmc_adtc(struct mxs_mmc_host *host) ...@@ -417,8 +420,7 @@ static void mxs_mmc_adtc(struct mxs_mmc_host *host)
ssp->base + HW_SSP_BLOCK_SIZE); ssp->base + HW_SSP_BLOCK_SIZE);
} }
if ((cmd->opcode == MMC_STOP_TRANSMISSION) || if (cmd->opcode == SD_IO_RW_EXTENDED)
(cmd->opcode == SD_IO_RW_EXTENDED))
cmd0 |= BM_SSP_CMD0_APPEND_8CYC; cmd0 |= BM_SSP_CMD0_APPEND_8CYC;
cmd1 = cmd->arg; cmd1 = cmd->arg;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment