mmc: uniphier-sd: avoid using broken DMA RX channel

host->chan_rx is NULL when UNIPHIER_SD_CAP_BROKEN_DMA_RX quirk flag
is set. In this case, it should not set up DMA.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Masahiro Yamada 2018-10-12 23:57:38 +09:00 committed by Ulf Hansson
parent b7ced87746
commit 90f8354140
1 changed files with 3 additions and 0 deletions

View File

@ -252,6 +252,9 @@ static void uniphier_sd_internal_dma_start(struct tmio_mmc_host *host,
u32 dma_mode; u32 dma_mode;
int sg_len; int sg_len;
if ((data->flags & MMC_DATA_READ) && !host->chan_rx)
goto force_pio;
if (WARN_ON(host->sg_len != 1)) if (WARN_ON(host->sg_len != 1))
goto force_pio; goto force_pio;