[PATCH] arm: ep93xx: add dma_masks for the M2P and M2M DMA controllers

Alexander Sverdlin subaparts at yandex.ru
Wed Nov 19 09:55:20 PST 2014


Hi!

On 19/11/14 17:45, H Hartley Sweeten wrote:
> The dma_mask and coherent_dma_mask need to be set or DMA memory allocations
> will fail with error messages like this:
>
>    ep93xx-dma ep93xx-dma-m2p: coherent DMA mask is unset
>
>    ep93xx-dma ep93xx-dma-m2m: coherent DMA mask is unset
>
> Add the missing information to the ep93xx-dma-m2p and ep93xx-dma-m2m
> devices.
>
> This fixes a problem with the sound/soc/edb93xx.c driver not loading
> that was reported by Jeremy Moles.

This repaired the sound on EDB9302-like board for me, so:

> Signed-off-by: H Hartley Sweeten <hsweeten at visionengravers.com>
> Reported-by: Jeremy Moles <cubicool at gmail.com>

Tested-by: Alexander Sverdlin <subaparts at yandex.ru>

> Cc: Alexander Sverdlin <subaparts at yandex.ru>
> Cc: Ryan Mallon <rmallon at gmail.com>
> ---
>   arch/arm/mach-ep93xx/dma.c | 12 ++++++++++--
>   1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-ep93xx/dma.c b/arch/arm/mach-ep93xx/dma.c
> index d8bfd02..88a4c9b 100644
> --- a/arch/arm/mach-ep93xx/dma.c
> +++ b/arch/arm/mach-ep93xx/dma.c
> @@ -66,11 +66,15 @@ static struct ep93xx_dma_platform_data ep93xx_dma_m2p_data = {
>   	.num_channels		= ARRAY_SIZE(ep93xx_dma_m2p_channels),
>   };
>
> +static u64 ep93xx_dma_m2p_mask = DMA_BIT_MASK(32);
> +
>   static struct platform_device ep93xx_dma_m2p_device = {
>   	.name			= "ep93xx-dma-m2p",
>   	.id			= -1,
>   	.dev			= {
> -		.platform_data	= &ep93xx_dma_m2p_data,
> +		.platform_data		= &ep93xx_dma_m2p_data,
> +		.dma_mask		= &ep93xx_dma_m2p_mask,
> +		.coherent_dma_mask	= DMA_BIT_MASK(32),
>   	},
>   };
>
> @@ -93,11 +97,15 @@ static struct ep93xx_dma_platform_data ep93xx_dma_m2m_data = {
>   	.num_channels		= ARRAY_SIZE(ep93xx_dma_m2m_channels),
>   };
>
> +static u64 ep93xx_dma_m2m_mask = DMA_BIT_MASK(32);
> +
>   static struct platform_device ep93xx_dma_m2m_device = {
>   	.name			= "ep93xx-dma-m2m",
>   	.id			= -1,
>   	.dev			= {
> -		.platform_data	= &ep93xx_dma_m2m_data,
> +		.platform_data		= &ep93xx_dma_m2m_data,
> +		.dma_mask		= &ep93xx_dma_m2m_mask,
> +		.coherent_dma_mask	= DMA_BIT_MASK(32),
>   	},
>   };
>
>



More information about the linux-arm-kernel mailing list