Message ID | 1332855768-32583-10-git-send-email-m.szyprowski@samsung.com |
---|---|
State | Accepted |
Headers | show |
On 03/27/2012 09:42 PM, Marek Szyprowski wrote: > diff --git a/arch/unicore32/mm/dma-swiotlb.c b/arch/unicore32/mm/dma-swiotlb.c > index bfa9fbb..4cf5f0c 100644 > --- a/arch/unicore32/mm/dma-swiotlb.c > +++ b/arch/unicore32/mm/dma-swiotlb.c > @@ -17,9 +17,23 @@ > > #include<asm/dma.h> > > +static void *unicore_swiotlb_alloc_coherent(struct device *dev, size_t size, > + dma_addr_t *dma_handle, gfp_t flags, > + struct dma_attrs *attrs) > +{ > + return swiotlb_alloc_coherent(dev, size, dma_handle, flags); > +} > + > +static void unicode_swiotlb_free_coherent(struct device *dev, size_t size, The bit is ok for me. Only a typo here, please change unicode to unicore. Thanks and Regards. Guan Xuetao
Hello, On Wednesday, March 28, 2012 4:23 AM Guan Xuetao wrote: > On 03/27/2012 09:42 PM, Marek Szyprowski wrote: > > diff --git a/arch/unicore32/mm/dma-swiotlb.c b/arch/unicore32/mm/dma-swiotlb.c > > index bfa9fbb..4cf5f0c 100644 > > --- a/arch/unicore32/mm/dma-swiotlb.c > > +++ b/arch/unicore32/mm/dma-swiotlb.c > > @@ -17,9 +17,23 @@ > > > > #include<asm/dma.h> > > > > +static void *unicore_swiotlb_alloc_coherent(struct device *dev, size_t size, > > + dma_addr_t *dma_handle, gfp_t flags, > > + struct dma_attrs *attrs) > > +{ > > + return swiotlb_alloc_coherent(dev, size, dma_handle, flags); > > +} > > + > > +static void unicode_swiotlb_free_coherent(struct device *dev, size_t size, > The bit is ok for me. Only a typo here, please change unicode to unicore. Ups, I'm sorry for that typo. I've fixed it on my git tree: http://git.linaro.org/gitweb?p=people/mszyprowski/linux-dma-mapping.git;a=commitdiff;h=bbe43c05b0653 9c09f89e07bcaf61ea0fca8d67f Best regards
diff --git a/arch/unicore32/include/asm/dma-mapping.h b/arch/unicore32/include/asm/dma-mapping.h index 9258e59..366460a 100644 --- a/arch/unicore32/include/asm/dma-mapping.h +++ b/arch/unicore32/include/asm/dma-mapping.h @@ -82,20 +82,26 @@ static inline int dma_set_mask(struct device *dev, u64 dma_mask) return 0; } -static inline void *dma_alloc_coherent(struct device *dev, size_t size, - dma_addr_t *dma_handle, gfp_t flag) +#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 flag, + struct dma_attrs *attrs) { struct dma_map_ops *dma_ops = get_dma_ops(dev); - return dma_ops->alloc_coherent(dev, size, dma_handle, flag); + return dma_ops->alloc(dev, size, dma_handle, flag, attrs); } -static inline void dma_free_coherent(struct device *dev, size_t size, - void *cpu_addr, 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 *cpu_addr, dma_addr_t dma_handle, + struct dma_attrs *attrs) { struct dma_map_ops *dma_ops = get_dma_ops(dev); - dma_ops->free_coherent(dev, size, cpu_addr, dma_handle); + dma_ops->free(dev, size, cpu_addr, dma_handle, attrs); } #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) diff --git a/arch/unicore32/mm/dma-swiotlb.c b/arch/unicore32/mm/dma-swiotlb.c index bfa9fbb..4cf5f0c 100644 --- a/arch/unicore32/mm/dma-swiotlb.c +++ b/arch/unicore32/mm/dma-swiotlb.c @@ -17,9 +17,23 @@ #include <asm/dma.h> +static void *unicore_swiotlb_alloc_coherent(struct device *dev, size_t size, + dma_addr_t *dma_handle, gfp_t flags, + struct dma_attrs *attrs) +{ + return swiotlb_alloc_coherent(dev, size, dma_handle, flags); +} + +static void unicode_swiotlb_free_coherent(struct device *dev, size_t size, + void *vaddr, dma_addr_t dma_addr, + struct dma_attrs *attrs) +{ + swiotlb_free_coherent(dev, size, vaddr, dma_addr); +} + struct dma_map_ops swiotlb_dma_map_ops = { - .alloc_coherent = swiotlb_alloc_coherent, - .free_coherent = swiotlb_free_coherent, + .alloc = unicore_swiotlb_alloc_coherent, + .free = unicore_swiotlb_free_coherent, .map_sg = swiotlb_map_sg_attrs, .unmap_sg = swiotlb_unmap_sg_attrs, .dma_supported = swiotlb_dma_supported,