From: Gerhard Sittig <gsi@denx.de>
To: linuxppc-dev@lists.ozlabs.org,
devicetree-discuss@lists.ozlabs.org,
Alexander Popov <a13xp0p0v88@gmail.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>,
Arnd Bergmann <arnd@arndb.de>, Vinod Koul <vinod.koul@intel.com>,
Gerhard Sittig <gsi@denx.de>, Dan Williams <djbw@fb.com>,
Anatolij Gustschin <agust@denx.de>
Subject: [PATCH RFC 0/8] MPC512x DMA slave s/g support, OF DMA lookup
Date: Fri, 12 Jul 2013 17:26:13 +0200 [thread overview]
Message-ID: <1373642781-32631-1-git-send-email-gsi@denx.de> (raw)
blurb is below the stats
Alexander Popov (1):
powerpc: mpc512x_dma: add support for data transfers between memory
and i/o memory
Gerhard Sittig (6):
dma: mpc512x: fix start condition in execute()
dma: mpc512x: support 'terminate all' control request
dts: mpc512x: prepare for preprocessor support
dma: mpc512x: use symbolic specifiers for DMA channels
dma: mpc512x: register for device tree channel lookup
HACK mmc: mxcmmc: enable clocks for the MPC512x
Lars-Peter Clausen (1):
dma: of: Add common xlate function for matching by channel id
.../devicetree/bindings/dma/mpc512x-dma.txt | 55 ++++++
arch/powerpc/boot/dts/ac14xx.dts | 2 +-
arch/powerpc/boot/dts/include/dt-bindings | 1 +
arch/powerpc/boot/dts/mpc5121.dtsi | 7 +-
arch/powerpc/boot/dts/mpc5121ads.dts | 2 +-
arch/powerpc/boot/dts/pdm360ng.dts | 2 +-
drivers/dma/mpc512x_dma.c | 181 +++++++++++++++++++-
drivers/dma/of-dma.c | 47 +++++
drivers/mmc/host/mxcmmc.c | 41 +++--
include/dt-bindings/dma/mpc512x-dma.h | 21 +++
include/linux/of_dma.h | 4 +
11 files changed, 336 insertions(+), 27 deletions(-)
create mode 100644 Documentation/devicetree/bindings/dma/mpc512x-dma.txt
create mode 120000 arch/powerpc/boot/dts/include/dt-bindings
create mode 100644 include/dt-bindings/dma/mpc512x-dma.h
this series
- introduces slave s/g support (that's support for DMA transfers which
involve peripherals in contrast to mem-to-mem transfers)
- adds device tree based lookup support for DMA channels
- combines floating patches and related feedback which already covered
several aspects of what the suggested LPB driver needs, to demonstrate
how integration might be done
Alexander, I'd suggest that you pickup this series and
- squash part 2 (start condition) and optionally part 3 (terminate all)
into part 1 (your slave s/g introduction)
- drop part 8 (SD card demo) as it was already NAKed and will be
obsolete with correct COMMON_CLK support, but was useful during test
to have one more DMA client on the MPC512x platform
- put your SCLPC support on top of the then OF capable DMA driver
- please leave the preprocessor support for DTS files separate from the
DMA related DTS part, as it will be part of another series as well
(clocks) or might get picked up separately for its being useful or
even a dependency in other ways (GPIOs, interrupts)
Lars, there is a checkpatch warning about a line longer than 80
characters in the common xlate part -- I didn't dare to change your
submission, and the part included here is verbatim from your patchwork
2331091 (original submission) and 2555701 (resend), is there a followup
which you can provide or point us to?
Arnd, this version addresses your concerns in Anatolij's earlier
submissions:
- the DMA controller really maps peripheral requesters 1:1 to DMA
channels, there's no other mapping or flexibility involved
- OF registration in the DMA controller's driver now is non-fatal for
compatibility with older device trees
- the device tree binding is documented (even if it's in line with the
generic DMA binding, being explicit is good, I guess)
Vinod, would you take these DMA related patches when Alexander's updated
version has passed review? That's what I understood from Lars so far.
the series is based on v3.10, each step in the series was build-tested,
the series' result including the mxcmmc hack was run-tested with the
commands below, moving 170MB of data and using DMA during transfers, the
numbers translate to 1.6MB/s throughput for the SD card and some 62.5KB
per DMA IRQ on average (does this help verify plausibility?)
$ find /media/mmcblk0p1/ -type f | xargs time wc
...
532086 3032411 173164032 total
real 1m 47.41s
user 0m 8.08s
sys 0m 1.69s
$ grep -i dma /proc/interrupts
65: 2716 IPIC Level mpc512x_dma
$ grep -i mmc /proc/interrupts
20: 5489 IPIC Level mxc-mmc
--
1.7.10.4
next reply other threads:[~2013-07-12 15:26 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-12 15:26 Gerhard Sittig [this message]
2013-07-12 15:26 ` [PATCH RFC 1/8] powerpc: mpc512x_dma: add support for data transfers between memory and i/o memory Gerhard Sittig
2013-07-14 10:05 ` Lars-Peter Clausen
2013-07-14 11:07 ` Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 2/8] dma: mpc512x: fix start condition in execute() Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 3/8] dma: mpc512x: support 'terminate all' control request Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 4/8] dts: mpc512x: prepare for preprocessor support Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 5/8] dma: mpc512x: use symbolic specifiers for DMA channels Gerhard Sittig
2013-07-13 7:17 ` Arnd Bergmann
2013-07-13 14:14 ` Gerhard Sittig
2013-07-14 8:50 ` Arnd Bergmann
2013-07-14 9:53 ` Lars-Peter Clausen
2013-07-14 11:02 ` Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 6/8] dma: of: Add common xlate function for matching by channel id Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 7/8] dma: mpc512x: register for device tree channel lookup Gerhard Sittig
2013-07-12 15:26 ` [PATCH RFC 8/8] HACK mmc: mxcmmc: enable clocks for the MPC512x Gerhard Sittig
2013-07-12 16:45 ` [PATCH RFC 0/8] MPC512x DMA slave s/g support, OF DMA lookup Lars-Peter Clausen
2013-07-14 12:01 ` [PATCH RFC v2 0/5] " Gerhard Sittig
2013-07-14 12:01 ` [PATCH RFC v2 1/5] dma: mpc512x: re-order mpc8308 specific instructions Gerhard Sittig
2013-08-12 13:38 ` Alexander Popov
2013-07-14 12:01 ` [PATCH RFC v2 2/5] dma: mpc512x: add support for peripheral transfers Gerhard Sittig
2013-07-16 10:37 ` Lars-Peter Clausen
2013-07-17 10:42 ` Gerhard Sittig
2013-07-31 7:46 ` Alexander Popov
2013-08-12 13:37 ` Alexander Popov
2013-07-14 12:01 ` [PATCH RFC v2 3/5] dma: of: Add common xlate function for matching by channel id Gerhard Sittig
2013-10-03 14:05 ` Alexander Popov
2013-07-14 12:02 ` [PATCH RFC v2 4/5] dma: mpc512x: register for device tree channel lookup Gerhard Sittig
2013-10-03 14:06 ` Alexander Popov
2013-07-14 12:02 ` [PATCH RFC v2 5/5] HACK mmc: mxcmmc: enable clocks for the MPC512x Gerhard Sittig
2013-10-03 14:06 ` Alexander Popov
2013-07-16 9:27 ` [PATCH RFC v2 0/5] MPC512x DMA slave s/g support, OF DMA lookup Alexander Popov
2013-10-03 14:00 ` Alexander Popov
2013-10-06 10:01 ` Gerhard Sittig
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=1373642781-32631-1-git-send-email-gsi@denx.de \
--to=gsi@denx.de \
--cc=a13xp0p0v88@gmail.com \
--cc=agust@denx.de \
--cc=arnd@arndb.de \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=djbw@fb.com \
--cc=lars@metafoo.de \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=vinod.koul@intel.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 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).