devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers
@ 2013-04-30  7:11 Guennadi Liakhovetski
  2013-04-30  7:11 ` [PATCH 1/4] OF: add a new phandle parsing function for grouped nodes Guennadi Liakhovetski
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Guennadi Liakhovetski @ 2013-04-30  7:11 UTC (permalink / raw)
  To: linux-sh
  Cc: Magnus Damm, Arnd Bergmann, Vinod Koul, Tony Lindgren,
	devicetree-discuss, linux-kernel, Guennadi Liakhovetski

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/

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

end of thread, other threads:[~2013-06-06  6:54 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-30  7:11 [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers Guennadi Liakhovetski
2013-04-30  7:11 ` [PATCH 1/4] OF: add a new phandle parsing function for grouped nodes Guennadi Liakhovetski
2013-04-30  7:11 ` [PATCH 2/4] dmaengine: add support for DMA multiplexer DT nodes Guennadi Liakhovetski
     [not found] ` <1367305883-2997-1-git-send-email-g.liakhovetski-Mmb7MZpHnFY@public.gmane.org>
2013-04-30  7:11   ` [PATCH 3/4] ARM: shmobile: move r8a7740 DMA controller DT node under a "dma-mux" node Guennadi Liakhovetski
2013-04-30  7:11 ` [PATCH 4/4] OF: modify function stubs to match proper function declarations Guennadi Liakhovetski
2013-06-06  6:54   ` Guennadi Liakhovetski
2013-04-30 10:43 ` [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers Vinod Koul
2013-04-30 12:17   ` Guennadi Liakhovetski
2013-05-02 16:28     ` Vinod Koul
2013-05-02 20:46       ` Guennadi Liakhovetski

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).