From: arnd@arndb•de (Arnd Bergmann)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH 1/5] dmaengine: dw_dmac: move to generic DMA binding
Date: Tue, 29 Jan 2013 14:55:49 +0000 [thread overview]
Message-ID: <201301291455.49347.arnd@arndb.de> (raw)
In-Reply-To: <20130129142434.GW23505@n2100.arm.linux.org.uk>
On Tuesday 29 January 2013, Russell King - ARM Linux wrote:
> No, that's not what I mean. I mean the situation we find on Versatile
> platforms:
>
> 8 3 >3
> PL080 DMA --/--+--/------> FPGA Mux --/--> {bunch of off-CPU peripherals}
> | 5
> `--/------> {On-CPU peripherals}
>
> This is something that I've been raising _every time_ I've been involved
> with DMA engine discussions when it comes to the matching stuff, so this
> is nothing new, and it's not unknown about.
Ok, I see. I have not actually been involved with the DMA engine API
much, so for me it's the first time /I/ see this being explained.
>From the DT binding perspective, doing this should be no problem. I guess
you would model the MUX as a trivial dma engine device that forwards to
another one, just like we do for nested interrupt controllers:
pl080: dma-engine at 10000000 {
compatible ="arm,pl080", "arm,primecell";
reg = <0x10000000 0x1000>;
dma-requests = <8>;
dma-channels = <4>;
#dma-cells = <2>;
};
fpga {
mux: dma-mux at f0008000 {
reg = <0xf0008000 100>;
compatible = "arm,versatile-fpga-dmamux";
dma-requests = <7>;
dma-channels = <3>;
#dma-cells = <1>;
dmas = <&pl080 5 0>, <&pl080 6 0> <&pl080 7 0>;
dma-names = "mux5", "mux6", "mux7";
};
...
some-device at f000a000 {
compatible = "foo,using-muxed-dma";
dmas = <&mux 3>, <&mux 4>;
dma-names = "rx", "tx";
};
};
The driver for foo,using-muxed-dma just requests a slave channel for its
lines, which ends up calling the xlate function of the driver for the mux.
That driver still needs to get written, of course, but it should be able
to recursively call dma_request_slave_channel on the pl080 device.
The arm,versatile-fpga-dmamux driver would not be registered to the dmaengine
layer, but it would register as an of_dma_controller.
Arnd
next prev parent reply other threads:[~2013-01-29 14:55 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1359395857-1235-1-git-send-email-arnd@arndb.de>
2013-01-28 21:58 ` [PATCH v2 0/5] dmaengine: convert dw_dmac/spear13xx to generic binding Arnd Bergmann
2013-01-28 21:58 ` [PATCH 1/5] dmaengine: dw_dmac: move to generic DMA binding Arnd Bergmann
2013-01-29 7:24 ` Viresh Kumar
2013-01-29 10:35 ` Arnd Bergmann
2013-01-29 10:49 ` Viresh Kumar
2013-01-29 10:54 ` Andy Shevchenko
2013-01-29 10:57 ` Viresh Kumar
2013-01-29 11:14 ` Andy Shevchenko
2013-01-29 13:31 ` Arnd Bergmann
2013-01-29 13:45 ` Andy Shevchenko
2013-01-29 14:26 ` Russell King - ARM Linux
2013-01-29 15:28 ` Arnd Bergmann
2013-01-29 15:17 ` Viresh Kumar
2013-01-29 16:21 ` Arnd Bergmann
2013-01-30 2:04 ` Viresh Kumar
2013-01-30 9:41 ` Arnd Bergmann
2013-01-30 9:48 ` Viresh Kumar
2013-01-30 10:08 ` Arnd Bergmann
2013-01-30 10:32 ` Viresh Kumar
[not found] ` <1359445171.31148.30.camel@smile>
2013-01-29 10:50 ` Arnd Bergmann
2013-01-29 11:18 ` Russell King - ARM Linux
2013-01-29 13:44 ` Arnd Bergmann
2013-01-29 14:24 ` Russell King - ARM Linux
2013-01-29 14:55 ` Arnd Bergmann [this message]
2013-01-29 15:44 ` Russell King - ARM Linux
2013-01-29 16:36 ` Arnd Bergmann
2013-01-29 17:45 ` Russell King - ARM Linux
2013-01-29 20:40 ` Arnd Bergmann
2013-01-29 21:59 ` Linus Walleij
2013-02-15 8:50 ` Andy Shevchenko
2013-02-15 11:17 ` Arnd Bergmann
2013-01-28 21:58 ` [PATCH 2/5] spi: pl022: use generic DMA slave configuration if possible Arnd Bergmann
2013-01-29 2:41 ` Mark Brown
2013-01-29 7:49 ` Andy Shevchenko
2013-01-29 13:13 ` Arnd Bergmann
2013-02-07 18:29 ` Linus Walleij
2013-02-07 19:42 ` Arnd Bergmann
2013-02-07 20:19 ` Linus Walleij
2013-02-07 21:15 ` Arnd Bergmann
2013-02-08 16:22 ` Russell King - ARM Linux
2013-02-08 16:28 ` Arnd Bergmann
2013-02-08 22:10 ` Linus Walleij
2013-02-08 16:20 ` Russell King - ARM Linux
2013-01-28 21:58 ` [PATCH 3/5] serial: pl011: " Arnd Bergmann
2013-01-30 4:38 ` Greg Kroah-Hartman
2013-01-28 21:58 ` [PATCH 4/5] ata: arasan: remove the need for platform_data Arnd Bergmann
2013-01-29 8:18 ` Viresh Kumar
2013-01-28 21:58 ` [PATCH 5/5] ARM: SPEAr13xx: Pass generic DW DMAC platform data from DT Arnd Bergmann
2013-01-29 8:16 ` Viresh Kumar
2013-01-29 13:21 ` Arnd Bergmann
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=201301291455.49347.arnd@arndb.de \
--to=arnd@arndb$(echo .)de \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox