linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm: ep93xx: add dma_masks for the M2P and M2M DMA controllers
@ 2014-11-21 17:23 H Hartley Sweeten
  2014-11-28 11:35 ` Arnd Bergmann
  0 siblings, 1 reply; 8+ messages in thread
From: H Hartley Sweeten @ 2014-11-21 17:23 UTC (permalink / raw)
  To: linux-arm-kernel

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.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reported-by: Jeremy Moles <cubicool@gmail.com>
Tested-by: Alexander Sverdlin <subaparts@yandex.ru>
Cc: Ryan Mallon <rmallon@gmail.com>
---
This fixes a problem with the sound/soc/cirrus/edb93xx.c driver not loading
and fixes the sound on these tested boards:

  EDB9315A (like)  - tested by Jeremy Moles
  EDB9302 (like)   - tested by Alexander Sverdlin
  EDB9307A (stock) - tested by H Hartley Sweeten

 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),
 	},
 };
 
-- 
2.0.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-12-04 16:08 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1416415519-4903-1-git-send-email-hsweeten@visionengravers.com>
2014-11-19 17:55 ` [PATCH] arm: ep93xx: add dma_masks for the M2P and M2M DMA controllers Alexander Sverdlin
2014-11-21 17:23 H Hartley Sweeten
2014-11-28 11:35 ` Arnd Bergmann
2014-11-28 22:30   ` Hartley Sweeten
2014-12-01 17:16   ` Hartley Sweeten
2014-12-01 17:58     ` Arnd Bergmann
2014-12-01 21:14       ` Hartley Sweeten
2014-12-04 16:08         ` Arnd Bergmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).