lkml.org 
[lkml]   [2013]   [Apr]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers
Date
Previously an issue has been discussed, arising on sh-/r-mobile ARM-based 
systems. There we typically have multiple DMA controller instances with
exactly equal or very similar capabilities. Each of them can serve the same
slaves, using the same slave identifiers (request line IDs). With the
present DMA DT implementation _each_ such DMA slave would have to reference
_each_ of those DMA controllers in its DMA bindings, e.g.

mmc0: mmc@10000000 {
...
dmas = <&dma0 0x10
&dma1 0x10
&dma2 0x10
&dma3 0x10
&dma0 0x11
&dma1 0x11
&dma2 0x11
&dma3 0x11>;
dma-names = "tx", "tx", "tx", "tx",
"rx", "rx", "rx", "rx";
};

Which certainly isn't pretty. To avoid such redundancy it has been proposed
to implement a DMA multiplexer DT node. That way slaves would just
reference the multiplexer and one of DMA controller instances in it would
be picked up automatically to provide DMA channels to slaves. Patches 1-3
in this series propose such an implementation. Patch 4 is just a minor
clean up, can be applied independently.

Cc: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>

Guennadi Liakhovetski (4):
OF: add a new phandle parsing function for grouped nodes
dmaengine: add support for DMA multiplexer DT nodes
ARM: shmobile: move r8a7740 DMA controller DT node under a "dma-mux"
node
OF: modify function stubs to match proper function declarations.

Documentation/devicetree/bindings/dma/dma.txt | 44 ++++++++++++++++++++
.../boot/dts/r8a7740-armadillo800eva-reference.dts | 12 +++---
arch/arm/boot/dts/r8a7740.dtsi | 43 +++++++++++--------
drivers/dma/of-dma.c | 39 +++++++++++++----
drivers/of/base.c | 28 +++++++++++-
include/linux/of.h | 20 ++++++++-
6 files changed, 147 insertions(+), 39 deletions(-)

--
1.7.2.5

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/


\
 
 \ /
  Last update: 2013-04-30 10:01    [W:0.094 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site