Эх сурвалжийг харах

mmc: dw_mmc: set fixed burst in BMOD register

This patch uses the fixed burst bit when using an internal DMA controller.
I found increased performance with IDMAC when this bit is set.

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Jaehoon Chung 14 жил өмнө
parent
commit
a5289a433d

+ 2 - 2
drivers/mmc/host/dw_mmc.c

@@ -316,7 +316,7 @@ static void dw_mci_idmac_stop_dma(struct dw_mci *host)
 
 
 	/* Stop the IDMAC running */
 	/* Stop the IDMAC running */
 	temp = mci_readl(host, BMOD);
 	temp = mci_readl(host, BMOD);
-	temp &= ~SDMMC_IDMAC_ENABLE;
+	temp &= ~(SDMMC_IDMAC_ENABLE | SDMMC_IDMAC_FB);
 	mci_writel(host, BMOD, temp);
 	mci_writel(host, BMOD, temp);
 }
 }
 
 
@@ -385,7 +385,7 @@ static void dw_mci_idmac_start_dma(struct dw_mci *host, unsigned int sg_len)
 
 
 	/* Enable the IDMAC */
 	/* Enable the IDMAC */
 	temp = mci_readl(host, BMOD);
 	temp = mci_readl(host, BMOD);
-	temp |= SDMMC_IDMAC_ENABLE;
+	temp |= SDMMC_IDMAC_ENABLE | SDMMC_IDMAC_FB;
 	mci_writel(host, BMOD, temp);
 	mci_writel(host, BMOD, temp);
 
 
 	/* Start it running */
 	/* Start it running */