diff options
Diffstat (limited to 'arch/mips/include/asm/dma-mapping.h')
| -rw-r--r-- | arch/mips/include/asm/dma-mapping.h | 18 | 
1 files changed, 12 insertions, 6 deletions
diff --git a/arch/mips/include/asm/dma-mapping.h b/arch/mips/include/asm/dma-mapping.h index 7aa37ddfca4..be39a12901c 100644 --- a/arch/mips/include/asm/dma-mapping.h +++ b/arch/mips/include/asm/dma-mapping.h @@ -57,25 +57,31 @@ dma_set_mask(struct device *dev, u64 mask)  extern void dma_cache_sync(struct device *dev, void *vaddr, size_t size,  	       enum dma_data_direction direction); -static inline void *dma_alloc_coherent(struct device *dev, size_t size, -				       dma_addr_t *dma_handle, gfp_t gfp) +#define dma_alloc_coherent(d,s,h,f)	dma_alloc_attrs(d,s,h,f,NULL) + +static inline void *dma_alloc_attrs(struct device *dev, size_t size, +				    dma_addr_t *dma_handle, gfp_t gfp, +				    struct dma_attrs *attrs)  {  	void *ret;  	struct dma_map_ops *ops = get_dma_ops(dev); -	ret = ops->alloc_coherent(dev, size, dma_handle, gfp); +	ret = ops->alloc(dev, size, dma_handle, gfp, attrs);  	debug_dma_alloc_coherent(dev, size, *dma_handle, ret);  	return ret;  } -static inline void dma_free_coherent(struct device *dev, size_t size, -				     void *vaddr, dma_addr_t dma_handle) +#define dma_free_coherent(d,s,c,h) dma_free_attrs(d,s,c,h,NULL) + +static inline void dma_free_attrs(struct device *dev, size_t size, +				  void *vaddr, dma_addr_t dma_handle, +				  struct dma_attrs *attrs)  {  	struct dma_map_ops *ops = get_dma_ops(dev); -	ops->free_coherent(dev, size, vaddr, dma_handle); +	ops->free(dev, size, vaddr, dma_handle, attrs);  	debug_dma_free_coherent(dev, size, vaddr, dma_handle);  }  |