[PATCH V4 1/3] arm: dma mapping: Export a dma ops function arm_dma_set_mask

Marek Szyprowski m.szyprowski at samsung.com
Wed Nov 21 05:00:19 EST 2012


Hello,

On 11/21/2012 10:39 AM, Gregory CLEMENT wrote:
> Expose another DMA operations function: arm_dma_set_mask. This
> function will be added to a custom DMA ops for Armada 370/XP.
> Depending of its configuration Armada 370/XP can be set as a "nearly"
> coherent architecture. In this case the DMA ops is made of:
> - specific functions for this architecture
> - already exposed arm DMA related functions
> - the arm_dma_set_mask which was not exposed yet.
>
> Signed-off-by: Gregory CLEMENT <gregory.clement at free-electrons.com>

Acked-by: Marek Szyprowski <m.szyprowski at samsung.com>

> ---
>   arch/arm/include/asm/dma-mapping.h |    2 ++
>   arch/arm/mm/dma-mapping.c          |    4 +---
>   2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h
> index 2300484..98d4dab 100644
> --- a/arch/arm/include/asm/dma-mapping.h
> +++ b/arch/arm/include/asm/dma-mapping.h
> @@ -111,6 +111,8 @@ static inline void dma_free_noncoherent(struct device *dev, size_t size,
>   
>   extern int dma_supported(struct device *dev, u64 mask);
>   
> +extern int arm_dma_set_mask(struct device *dev, u64 dma_mask);
> +
>   /**
>    * arm_dma_alloc - allocate consistent memory for DMA
>    * @dev: valid struct device pointer, or NULL for ISA and EISA-like devices
> diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
> index 58bc3e4..5383bc0 100644
> --- a/arch/arm/mm/dma-mapping.c
> +++ b/arch/arm/mm/dma-mapping.c
> @@ -124,8 +124,6 @@ static void arm_dma_sync_single_for_device(struct device *dev,
>   	__dma_page_cpu_to_dev(page, offset, size, dir);
>   }
>   
> -static int arm_dma_set_mask(struct device *dev, u64 dma_mask);
> -
>   struct dma_map_ops arm_dma_ops = {
>   	.alloc			= arm_dma_alloc,
>   	.free			= arm_dma_free,
> @@ -971,7 +969,7 @@ int dma_supported(struct device *dev, u64 mask)
>   }
>   EXPORT_SYMBOL(dma_supported);
>   
> -static int arm_dma_set_mask(struct device *dev, u64 dma_mask)
> +int arm_dma_set_mask(struct device *dev, u64 dma_mask)
>   {
>   	if (!dev->dma_mask || !dma_supported(dev, dma_mask))
>   		return -EIO;

Best regards
-- 
Marek Szyprowski
Samsung Poland R&D Center





More information about the linux-arm-kernel mailing list