mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
mmc: omap_hsmmc: fix cmd23 multiblock read/write
Check for set block count command fails always since host->cmd is set to NULL in the same function incorrectly. Correct host->cmd usage properly. Signed-off-by: Balaji T K <balajitk@ti.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Chris Ball <chris@printf.net>
This commit is contained in:
parent
77fae21987
commit
2177fa9482
1 changed files with 3 additions and 2 deletions
|
@ -920,16 +920,17 @@ omap_hsmmc_xfer_done(struct omap_hsmmc_host *host, struct mmc_data *data)
|
||||||
static void
|
static void
|
||||||
omap_hsmmc_cmd_done(struct omap_hsmmc_host *host, struct mmc_command *cmd)
|
omap_hsmmc_cmd_done(struct omap_hsmmc_host *host, struct mmc_command *cmd)
|
||||||
{
|
{
|
||||||
host->cmd = NULL;
|
|
||||||
|
|
||||||
if (host->mrq->sbc && (host->cmd == host->mrq->sbc) &&
|
if (host->mrq->sbc && (host->cmd == host->mrq->sbc) &&
|
||||||
!host->mrq->sbc->error && !(host->flags & AUTO_CMD23)) {
|
!host->mrq->sbc->error && !(host->flags & AUTO_CMD23)) {
|
||||||
|
host->cmd = NULL;
|
||||||
omap_hsmmc_start_dma_transfer(host);
|
omap_hsmmc_start_dma_transfer(host);
|
||||||
omap_hsmmc_start_command(host, host->mrq->cmd,
|
omap_hsmmc_start_command(host, host->mrq->cmd,
|
||||||
host->mrq->data);
|
host->mrq->data);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
host->cmd = NULL;
|
||||||
|
|
||||||
if (cmd->flags & MMC_RSP_PRESENT) {
|
if (cmd->flags & MMC_RSP_PRESENT) {
|
||||||
if (cmd->flags & MMC_RSP_136) {
|
if (cmd->flags & MMC_RSP_136) {
|
||||||
/* response type 2 */
|
/* response type 2 */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue