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 b51a4b1566054c8c99d7c380f8f81e7f6a23716b..706eab4e1237cc2b28b65c80af62f8605d351424 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);