[PATCH] dma-mapping: remove dma_{alloc,free,mmap}_writecombine

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Jul 30 13:50:45 UTC 2019


Hi Christoph,

Thank you for the patch.

On Tue, Jul 30, 2019 at 09:18:49AM +0300, Christoph Hellwig wrote:
> We can already use DMA_ATTR_WRITE_COMBINE or the _wc prefixed version,
> so remove the third way of doing things.
> 
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> ---
>  drivers/gpu/drm/omapdrm/dss/dispc.c | 11 +++++------
>  include/linux/dma-mapping.h         |  9 ---------
>  2 files changed, 5 insertions(+), 15 deletions(-)
> 
> diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c b/drivers/gpu/drm/omapdrm/dss/dispc.c
> index 785c5546067a..c70f3246a552 100644
> --- a/drivers/gpu/drm/omapdrm/dss/dispc.c
> +++ b/drivers/gpu/drm/omapdrm/dss/dispc.c
> @@ -4609,11 +4609,10 @@ static int dispc_errata_i734_wa_init(struct dispc_device *dispc)
>  	i734_buf.size = i734.ovli.width * i734.ovli.height *
>  		color_mode_to_bpp(i734.ovli.fourcc) / 8;
>  
> -	i734_buf.vaddr = dma_alloc_writecombine(&dispc->pdev->dev,
> -						i734_buf.size, &i734_buf.paddr,
> -						GFP_KERNEL);
> +	i734_buf.vaddr = dma_alloc_wc(&dispc->pdev->dev, i734_buf.size,
> +			&i734_buf.paddr, GFP_KERNEL);

I would have indented this line to match the rest. Apart from that,

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

>  	if (!i734_buf.vaddr) {
> -		dev_err(&dispc->pdev->dev, "%s: dma_alloc_writecombine failed\n",
> +		dev_err(&dispc->pdev->dev, "%s: dma_alloc_wc failed\n",
>  			__func__);
>  		return -ENOMEM;
>  	}
> @@ -4626,8 +4625,8 @@ static void dispc_errata_i734_wa_fini(struct dispc_device *dispc)
>  	if (!dispc->feat->has_gamma_i734_bug)
>  		return;
>  
> -	dma_free_writecombine(&dispc->pdev->dev, i734_buf.size, i734_buf.vaddr,
> -			      i734_buf.paddr);
> +	dma_free_wc(&dispc->pdev->dev, i734_buf.size, i734_buf.vaddr,
> +		    i734_buf.paddr);
>  }
>  
>  static void dispc_errata_i734_wa(struct dispc_device *dispc)
> diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
> index f7d1eea32c78..633dae466097 100644
> --- a/include/linux/dma-mapping.h
> +++ b/include/linux/dma-mapping.h
> @@ -786,9 +786,6 @@ static inline void *dma_alloc_wc(struct device *dev, size_t size,
>  
>  	return dma_alloc_attrs(dev, size, dma_addr, gfp, attrs);
>  }
> -#ifndef dma_alloc_writecombine
> -#define dma_alloc_writecombine dma_alloc_wc
> -#endif
>  
>  static inline void dma_free_wc(struct device *dev, size_t size,
>  			       void *cpu_addr, dma_addr_t dma_addr)
> @@ -796,9 +793,6 @@ static inline void dma_free_wc(struct device *dev, size_t size,
>  	return dma_free_attrs(dev, size, cpu_addr, dma_addr,
>  			      DMA_ATTR_WRITE_COMBINE);
>  }
> -#ifndef dma_free_writecombine
> -#define dma_free_writecombine dma_free_wc
> -#endif
>  
>  static inline int dma_mmap_wc(struct device *dev,
>  			      struct vm_area_struct *vma,
> @@ -808,9 +802,6 @@ static inline int dma_mmap_wc(struct device *dev,
>  	return dma_mmap_attrs(dev, vma, cpu_addr, dma_addr, size,
>  			      DMA_ATTR_WRITE_COMBINE);
>  }
> -#ifndef dma_mmap_writecombine
> -#define dma_mmap_writecombine dma_mmap_wc
> -#endif
>  
>  #ifdef CONFIG_NEED_DMA_MAP_STATE
>  #define DEFINE_DMA_UNMAP_ADDR(ADDR_NAME)        dma_addr_t ADDR_NAME

-- 
Regards,

Laurent Pinchart


More information about the dri-devel mailing list