Calling mxcmci_use_dma(host) is intended for the next transfer only, not for generic detection if DMA is possible. Without this change, the DMA gets never configured and thus, never used. Signed-off-by: Juergen Borleis <jbe@xxxxxxxxxxxxxx> --- drivers/mmc/host/mxcmmc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/mxcmmc.c b/drivers/mmc/host/mxcmmc.c index 2fe6fcd..611f827 100644 --- a/drivers/mmc/host/mxcmmc.c +++ b/drivers/mmc/host/mxcmmc.c @@ -834,7 +834,8 @@ static void mxcmci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) else burstlen = 4; - if (mxcmci_use_dma(host) && burstlen != host->burstlen) { + if (host->dma != NULL && burstlen != host->burstlen) { + /* reconfigure DMA on changes only */ host->burstlen = burstlen; ret = mxcmci_setup_dma(mmc); if (ret) { -- 2.20.1