staging: mt7621-mmc: Always use linked DMA mode
authorChristian Lütke-Stetzkamp <christian@lkamp.de>
Sun, 29 Apr 2018 17:32:40 +0000 (19:32 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 May 2018 02:08:07 +0000 (19:08 -0700)
Current code uses linked DMA mode only when there is more than one
entry in the scatterlist. But the overhead of the linked DMA is very
small, so the code is easier when only using linked DMA and this is
also the way, the upstream driver mtk-sd handles it.

Signed-off-by: Christian Lütke-Stetzkamp <christian@lkamp.de>
Reviewed-by: NeilBrown <neil@brown.name>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/mt7621-mmc/sd.c

index b51a4b1..706eab4 100644 (file)
@@ -1169,10 +1169,7 @@ static void msdc_dma_setup(struct msdc_host *host, struct msdc_dma *dma,
        dma->sg = sg;
        dma->sglen = sglen;
 
-       if (sglen == 1 && sg_dma_len(sg) <= MAX_DMA_CNT)
-               dma->mode = MSDC_MODE_DMA_BASIC;
-       else
-               dma->mode = MSDC_MODE_DMA_DESC;
+       dma->mode = MSDC_MODE_DMA_DESC;
 
        N_MSG(DMA, "DMA mode<%d> sglen<%d> xfersz<%d>", dma->mode, dma->sglen,
              host->xfer_size);