From: Vinod Koul <vinod.koul@intel.com>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: linux-sh@vger.kernel.org, Magnus Damm <magnus.damm@gmail.com>,
Arnd Bergmann <arnd@arndb.de>, Tony Lindgren <tony@atomide.com>,
devicetree-discuss@lists.ozlabs.org,
linux-kernel@vger.kernel.org,
Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Subject: Re: [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers
Date: Tue, 30 Apr 2013 10:55:54 +0000 [thread overview]
Message-ID: <20130430104354.GF1960@intel.com> (raw)
In-Reply-To: <1367305883-2997-1-git-send-email-g.liakhovetski@gmx.de>
On Tue, Apr 30, 2013 at 09:11:19AM +0200, Guennadi Liakhovetski wrote:
> 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.
But why... if that is the case then we havent define DT-bindings clearly enough
And we havent merged that yet, so why not fix that in first set itself
--
~Vinod
>
> 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/
WARNING: multiple messages have this Message-ID (diff)
From: Vinod Koul <vinod.koul@intel.com>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: linux-sh@vger.kernel.org, Magnus Damm <magnus.damm@gmail.com>,
Arnd Bergmann <arnd@arndb.de>, Tony Lindgren <tony@atomide.com>,
devicetree-discuss@lists.ozlabs.org,
linux-kernel@vger.kernel.org,
Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Subject: Re: [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers
Date: Tue, 30 Apr 2013 16:13:54 +0530 [thread overview]
Message-ID: <20130430104354.GF1960@intel.com> (raw)
In-Reply-To: <1367305883-2997-1-git-send-email-g.liakhovetski@gmx.de>
On Tue, Apr 30, 2013 at 09:11:19AM +0200, Guennadi Liakhovetski wrote:
> 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.
But why... if that is the case then we havent define DT-bindings clearly enough
And we havent merged that yet, so why not fix that in first set itself
--
~Vinod
>
> 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/
next prev parent reply other threads:[~2013-04-30 10:55 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-30 7:11 [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers Guennadi Liakhovetski
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
2013-04-30 7:11 ` Guennadi Liakhovetski
2013-04-30 7:11 ` [PATCH 2/4] dmaengine: add support for DMA multiplexer DT nodes Guennadi Liakhovetski
2013-04-30 7:11 ` 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 ` Guennadi Liakhovetski
2013-04-30 7:11 ` Guennadi Liakhovetski
2013-04-30 7:11 ` [PATCH 4/4] OF: modify function stubs to match proper function declarations Guennadi Liakhovetski
2013-04-30 7:11 ` Guennadi Liakhovetski
2013-06-06 6:54 ` Guennadi Liakhovetski
2013-06-06 6:54 ` Guennadi Liakhovetski
2013-04-30 10:43 ` Vinod Koul [this message]
2013-04-30 10:55 ` [PATCH/RFC 0/4] dmaengine: add DT support for DMA multiplexers Vinod Koul
2013-04-30 12:17 ` Guennadi Liakhovetski
2013-04-30 12:17 ` Guennadi Liakhovetski
2013-05-02 16:28 ` Vinod Koul
2013-05-02 16:40 ` Vinod Koul
2013-05-02 20:46 ` Guennadi Liakhovetski
2013-05-02 20:46 ` Guennadi Liakhovetski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130430104354.GF1960@intel.com \
--to=vinod.koul@intel.com \
--cc=arnd@arndb.de \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=g.liakhovetski+renesas@gmail.com \
--cc=g.liakhovetski@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.