diff mbox series

[U-Boot,2/4] mmc: tmio-common: Drop custom dma mapping functions

Message ID 20191115115505.893-3-vigneshr@ti.com
State Changes Requested
Delegated to: Tom Rini
Headers show
Series dma-mapping: Add cache flush/invalidation to dma_{un}map_single | expand

Commit Message

Raghavendra, Vignesh Nov. 15, 2019, 11:55 a.m. UTC
Drop local dma_map_single() and dma_unmap_single() and use arch specific
common implementation

Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
---
 drivers/mmc/tmio-common.c | 25 +++----------------------
 1 file changed, 3 insertions(+), 22 deletions(-)

Comments

Masahiro Yamada Nov. 15, 2019, 12:18 p.m. UTC | #1
On Fri, Nov 15, 2019 at 8:56 PM Vignesh Raghavendra <vigneshr@ti.com> wrote:
>
> Drop local dma_map_single() and dma_unmap_single() and use arch specific
> common implementation
>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> ---

Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com>


>  drivers/mmc/tmio-common.c | 25 +++----------------------
>  1 file changed, 3 insertions(+), 22 deletions(-)
>
> diff --git a/drivers/mmc/tmio-common.c b/drivers/mmc/tmio-common.c
> index 812205a21f6a..37c2b8555150 100644
> --- a/drivers/mmc/tmio-common.c
> +++ b/drivers/mmc/tmio-common.c
> @@ -4,6 +4,7 @@
>   *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
>   */
>
> +#include <asm/dma-mapping.h>
>  #include <common.h>
>  #include <clk.h>
>  #include <fdtdec.h>
> @@ -75,26 +76,6 @@ void tmio_sd_writel(struct tmio_sd_priv *priv,
>                 writel(val, priv->regbase + reg);
>  }
>
> -static dma_addr_t __dma_map_single(void *ptr, size_t size,
> -                                  enum dma_data_direction dir)
> -{
> -       unsigned long addr = (unsigned long)ptr;
> -
> -       if (dir == DMA_FROM_DEVICE)
> -               invalidate_dcache_range(addr, addr + size);
> -       else
> -               flush_dcache_range(addr, addr + size);
> -
> -       return addr;
> -}
> -
> -static void __dma_unmap_single(dma_addr_t addr, size_t size,
> -                              enum dma_data_direction dir)
> -{
> -       if (dir != DMA_TO_DEVICE)
> -               invalidate_dcache_range(addr, addr + size);
> -}
> -
>  static int tmio_sd_check_error(struct udevice *dev, struct mmc_cmd *cmd)
>  {
>         struct tmio_sd_priv *priv = dev_get_priv(dev);
> @@ -361,7 +342,7 @@ static int tmio_sd_dma_xfer(struct udevice *dev, struct mmc_data *data)
>
>         tmio_sd_writel(priv, tmp, TMIO_SD_DMA_MODE);
>
> -       dma_addr = __dma_map_single(buf, len, dir);
> +       dma_addr = dma_map_single(buf, len, dir);
>
>         tmio_sd_dma_start(priv, dma_addr);
>
> @@ -370,7 +351,7 @@ static int tmio_sd_dma_xfer(struct udevice *dev, struct mmc_data *data)
>         if (poll_flag == TMIO_SD_DMA_INFO1_END_RD)
>                 udelay(1);
>
> -       __dma_unmap_single(dma_addr, len, dir);
> +       dma_unmap_single(buf, len, dir);
>
>         return ret;
>  }
> --
> 2.24.0
>
> _______________________________________________
> U-Boot mailing list
> U-Boot@lists.denx.de
> https://lists.denx.de/listinfo/u-boot
diff mbox series

Patch

diff --git a/drivers/mmc/tmio-common.c b/drivers/mmc/tmio-common.c
index 812205a21f6a..37c2b8555150 100644
--- a/drivers/mmc/tmio-common.c
+++ b/drivers/mmc/tmio-common.c
@@ -4,6 +4,7 @@ 
  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
  */
 
+#include <asm/dma-mapping.h>
 #include <common.h>
 #include <clk.h>
 #include <fdtdec.h>
@@ -75,26 +76,6 @@  void tmio_sd_writel(struct tmio_sd_priv *priv,
 		writel(val, priv->regbase + reg);
 }
 
-static dma_addr_t __dma_map_single(void *ptr, size_t size,
-				   enum dma_data_direction dir)
-{
-	unsigned long addr = (unsigned long)ptr;
-
-	if (dir == DMA_FROM_DEVICE)
-		invalidate_dcache_range(addr, addr + size);
-	else
-		flush_dcache_range(addr, addr + size);
-
-	return addr;
-}
-
-static void __dma_unmap_single(dma_addr_t addr, size_t size,
-			       enum dma_data_direction dir)
-{
-	if (dir != DMA_TO_DEVICE)
-		invalidate_dcache_range(addr, addr + size);
-}
-
 static int tmio_sd_check_error(struct udevice *dev, struct mmc_cmd *cmd)
 {
 	struct tmio_sd_priv *priv = dev_get_priv(dev);
@@ -361,7 +342,7 @@  static int tmio_sd_dma_xfer(struct udevice *dev, struct mmc_data *data)
 
 	tmio_sd_writel(priv, tmp, TMIO_SD_DMA_MODE);
 
-	dma_addr = __dma_map_single(buf, len, dir);
+	dma_addr = dma_map_single(buf, len, dir);
 
 	tmio_sd_dma_start(priv, dma_addr);
 
@@ -370,7 +351,7 @@  static int tmio_sd_dma_xfer(struct udevice *dev, struct mmc_data *data)
 	if (poll_flag == TMIO_SD_DMA_INFO1_END_RD)
 		udelay(1);
 
-	__dma_unmap_single(dma_addr, len, dir);
+	dma_unmap_single(buf, len, dir);
 
 	return ret;
 }