From: Matt Porter <mporter@ti.com>
To: "Hebbar, Gururaja" <gururaja.hebbar@ti.com>
Cc: Linux DaVinci Kernel List
<davinci-linux-open-source@linux.davincidsp.com>,
Linux OMAP List <linux-omap@vger.kernel.org>,
Russell King <linux@arm.linux.org.uk>,
"Cousson, Benoit" <b-cousson@ti.com>,
Arnd Bergmann <arnd@arndb.de>,
Linux Documentation List <linux-doc@vger.kernel.org>,
Tony Lindgren <tony@atomide.com>,
Linux MMC List <linux-mmc@vger.kernel.org>,
Devicetree Discuss <devicetree-discuss@lists.ozlabs.org>,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Rob Herring <rob.herring@calxeda.com>,
Grant Likely <grant.likely@secretlab.ca>,
Vinod Koul <vinod.koul@intel.com>, Rob Landley <rob@landley.net>,
Dan Williams <djbw@fb.com>,
Linux SPI Devel List <spi-devel-general@lists.sourceforge.net>,
Chris Ball <cjb@laptop.org>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>
Subject: Re: [RFC PATCH 00/13] DMA Engine support for AM33xx
Date: Mon, 24 Sep 2012 08:05:12 -0400 [thread overview]
Message-ID: <20120924120512.GM16522@beef> (raw)
In-Reply-To: <1BAFE6F6C881BF42822005164F1491C33EA8E07D@DBDE01.ent.ti.com>
On Mon, Sep 24, 2012 at 11:26:55AM +0000, Hebbar, Gururaja wrote:
> On Fri, Sep 21, 2012 at 23:52:11, Porter, Matt wrote:
> > On Fri, Sep 21, 2012 at 08:27:07AM +0000, Hebbar, Gururaja wrote:
> > > On Thu, Sep 20, 2012 at 20:13:33, Porter, Matt wrote:
> > > > This series adds DMA Engine support for AM33xx, which uses
> > > > an EDMA DMAC. The EDMA DMAC has been previously supported by only
> > > > a private API implementation (much like the situation with OMAP
> > > > DMA) found on the DaVinci family of SoCs.
> > > >
> > > > There are a mind-boggling number of dependencies for this series:
> > > >
> > > > - Jon Hunter's OF DMA helpers series
> > > > https://patchwork.kernel.org/patch/1461061/
> > > > https://patchwork.kernel.org/patch/1461051/
> > > > - Patch to address OF DMA helpers naming issues:
> > > > https://patchwork.kernel.org/patch/1477921/
> > > > - EDMA DMA Engine wrapper driver in linux-next
> > > > c2dde5f8f2095d7c623ff3565c1462e190272273
> > > > - EDMA DMA Engine wrapper driver bug fix:
> > > > https://patchwork.kernel.org/patch/1474411/
> > > > - A huge number of patches in linux-next for AM33xx boot
> > > > (too numerous to list)
> > > >
> > > > The approach taken is similar to how OMAP DMA is being converted to
> > > > DMA Engine support. With the functional EDMA private API already
> > > > existing in mach-davinci/dma.c, we first move that to an ARM common
> > > > area so it can be shared. Adding DT and runtime PM support to the
> > > > private EDMA API implementation allows it to run on AM33xx. AM33xx
> > > > *only* boots using DT so we leverage Jon's generic DT DMA helpers to
> > > > register EDMA DMAC with the of_dma framework and then add support
> > > > for calling the dma_request_slave_channel() API to both the mmc
> > > > and spi drivers.
> > > >
> > > > What works? Well, with this series we now have MMC and SPI support
> > > > on AM33xx. The only caveat for MMC is that the mmc3 controller has
> > > > its events on the crossbar and is not usable right now.
> > > >
> > > > This is tested on BeagleBone with a SPI framebuffer driver and SD
> > > > card.
> > > >
> > > > After this series, the plan is to convert the last in-tree user
> > > > of the private EDMA API (davinci-pcm/mcasp) and then eliminate
> > > > the private EDMA API by folding its functionality into
> > > > drivers/dma/edma.c.
> > > >
> > > > TODO:
> > > > add AM33xx crossbar support to the private EDMA API
> > > > (any EDMA events on the crossbar are not supported)
> > > >
> > >
> > >
> > > Can you please mention the base repo you have taken as starting point.
> > > (repo + extra patches ...).
> >
> > It's mainline 3.6-rc6 and you can see the complete set of patches
> > at https://github.com/ohporter/linux/tree/edma-dmaengine-am33xx-rfc-v1
> > after commit 5698bd757d55b1bb87edd1a9744ab09c142abfc2
>
> Thanks for the link. However, I was looking for the mainline kernel repo/branch
> That you first used as baseline.
Linus 3.6-rc6 is the baseline. This inital version was created before any
of the am33xx base support patches got pulled to linux-next. v2 is being
rebased against that to slim down the stack of patches necessary for
testing.
> > > This will help us to test the code.
> > >
> > > This is because I looked at the patch 12/13 and I see that mmc
> > > device-node is modified. But in mainline I don’t see device
> > > node for mmc (yet).
> >
> > Oops. You'll need e62a3333ae450bcdefbe22229d7bc277ae0ef645 and
> > fe97304557d2c6f7d0aaf1ea028ea48ffca366a9 which I forgot to include
> > in this series. I'll have them in for v2.
> >
> > -Matt
> >
> > > > Matt Porter (13):
> > > > ARM: davinci: move private EDMA API to arm/common
> > > > ARM: edma: remove unused transfer controller handlers
> > > > ARM: edma: add DT and runtime PM support for AM335x
> > > > dmaengine: edma: enable build for AM335x
> > > > dma: Add TI EDMA device tree binding
> > > > ARM: omap: add hsmmc am33xx specific init
> > > > mmc: omap_hsmmc: dma_request_slave_channel() support for DT platforms
> > > > mmc: omap_hsmmc: limit max_segs with the EDMA DMAC
> > > > mmc: omap_hsmmc: add generic DMA request support to the DT binding
> > > > spi: omap2-mcspi: dma_request_slave_channel() support for DT
> > > > platforms
> > > > spi: omap2-mcspi: add generic DMA request support to the DT binding
> > > > ARM: dts: add am33xx EDMA support
> > > > Documentation: add schedule for removing private EDMA API
> > > >
> > > > Documentation/devicetree/bindings/dma/ti-edma.txt | 49 +
> > > > .../devicetree/bindings/mmc/ti-omap-hsmmc.txt | 25 +-
> > > > Documentation/devicetree/bindings/spi/omap-spi.txt | 27 +-
> > > > Documentation/feature-removal-schedule.txt | 10 +
> > > > arch/arm/Kconfig | 1 +
> > > > arch/arm/boot/dts/am33xx.dtsi | 46 +
> > > > arch/arm/common/Kconfig | 3 +
> > > > arch/arm/common/Makefile | 1 +
> > > > arch/arm/common/edma.c | 1779 ++++++++++++++++++++
> > > > arch/arm/include/asm/mach/edma.h | 267 +++
> > > > arch/arm/mach-davinci/Makefile | 2 +-
> > > > arch/arm/mach-davinci/devices.c | 3 +-
> > > > arch/arm/mach-davinci/dm355.c | 2 +-
> > > > arch/arm/mach-davinci/dm365.c | 2 +-
> > > > arch/arm/mach-davinci/dm644x.c | 2 +-
> > > > arch/arm/mach-davinci/dm646x.c | 2 +-
> > > > arch/arm/mach-davinci/dma.c | 1588 -----------------
> > > > arch/arm/mach-davinci/include/mach/asp.h | 2 +-
> > > > arch/arm/mach-davinci/include/mach/da8xx.h | 3 +-
> > > > arch/arm/mach-davinci/include/mach/edma.h | 267 ---
> > > > arch/arm/mach-davinci/include/mach/spi.h | 2 +-
> > > > arch/arm/mach-omap2/hsmmc.c | 7 +-
> > > > arch/arm/plat-omap/Kconfig | 1 +
> > > > drivers/dma/Kconfig | 2 +-
> > > > drivers/dma/edma.c | 2 +-
> > > > drivers/mmc/host/omap_hsmmc.c | 26 +-
> > > > drivers/spi/spi-omap2-mcspi.c | 68 +-
> > > > 27 files changed, 2296 insertions(+), 1893 deletions(-)
> > > > create mode 100644 Documentation/devicetree/bindings/dma/ti-edma.txt
> > > > create mode 100644 arch/arm/common/edma.c
> > > > create mode 100644 arch/arm/include/asm/mach/edma.h
> > > > delete mode 100644 arch/arm/mach-davinci/dma.c
> > > > delete mode 100644 arch/arm/mach-davinci/include/mach/edma.h
> > > >
> > > > --
> > > > 1.7.9.5
> > > >
> > > > _______________________________________________
> > > > Davinci-linux-open-source mailing list
> > > > Davinci-linux-open-source@linux.davincidsp.com
> > > > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
> > > >
> > >
> > >
> > > Regards,
> > > Gururaja
> > > _______________________________________________
> > > Davinci-linux-open-source mailing list
> > > Davinci-linux-open-source@linux.davincidsp.com
> > > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
> >
>
>
> Regards,
> Gururaja
> _______________________________________________
> Davinci-linux-open-source mailing list
> Davinci-linux-open-source@linux.davincidsp.com
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
next prev parent reply other threads:[~2012-09-24 12:05 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-20 14:43 [RFC PATCH 00/13] DMA Engine support for AM33xx Matt Porter
[not found] ` <1348152226-13588-1-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2012-09-20 14:43 ` [RFC PATCH 01/13] ARM: davinci: move private EDMA API to arm/common Matt Porter
[not found] ` <1348152226-13588-2-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2012-09-21 7:10 ` Hebbar, Gururaja
2012-09-21 18:24 ` Matt Porter
2012-09-21 9:29 ` Russell King - ARM Linux
[not found] ` <20120921092923.GA31374-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2012-09-21 9:33 ` Hebbar, Gururaja
2012-09-21 9:42 ` Russell King - ARM Linux
[not found] ` <20120921094205.GC31374-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2012-09-21 18:34 ` Matt Porter
2012-09-21 18:50 ` Russell King - ARM Linux
2012-09-24 2:44 ` Hebbar, Gururaja
2012-09-20 14:43 ` [RFC PATCH 02/13] ARM: edma: remove unused transfer controller handlers Matt Porter
2012-09-20 14:43 ` [RFC PATCH 03/13] ARM: edma: add DT and runtime PM support for AM335x Matt Porter
[not found] ` <1348152226-13588-4-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2012-09-21 8:53 ` Hebbar, Gururaja
2012-10-09 18:58 ` Matt Porter
2012-09-20 14:43 ` [RFC PATCH 04/13] dmaengine: edma: enable build " Matt Porter
2012-09-20 14:43 ` [RFC PATCH 05/13] dma: Add TI EDMA device tree binding Matt Porter
[not found] ` <1348152226-13588-6-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2012-09-21 8:45 ` Hebbar, Gururaja
2012-09-21 18:23 ` Matt Porter
2012-09-20 14:43 ` [RFC PATCH 06/13] ARM: omap: add hsmmc am33xx specific init Matt Porter
2012-09-20 14:43 ` [RFC PATCH 07/13] mmc: omap_hsmmc: dma_request_slave_channel() support for DT platforms Matt Porter
2012-09-20 22:16 ` Tony Lindgren
2012-09-20 14:43 ` [RFC PATCH 08/13] mmc: omap_hsmmc: limit max_segs with the EDMA DMAC Matt Porter
2012-09-21 17:15 ` S, Venkatraman
[not found] ` <CANfBPZ81anOy8fWgKM1PgCtB4V2pEp2x1Qi4x1uPsq7QieMN5g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-09-21 17:17 ` S, Venkatraman
2012-09-21 17:18 ` Felipe Balbi
[not found] ` <20120921171840.GB10409-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>
2012-09-21 17:33 ` S, Venkatraman
2012-09-21 18:54 ` Matt Porter
2012-09-21 18:42 ` Matt Porter
2012-09-21 18:47 ` Russell King - ARM Linux
[not found] ` <20120921184721.GD31374-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2012-09-21 19:03 ` Matt Porter
2012-09-27 9:41 ` Vinod Koul
2012-10-01 16:39 ` Matt Porter
2012-10-02 12:03 ` Vinod Koul
2012-09-20 14:43 ` [RFC PATCH 09/13] mmc: omap_hsmmc: add generic DMA request support to the DT binding Matt Porter
2012-09-20 14:43 ` [RFC PATCH 10/13] spi: omap2-mcspi: dma_request_slave_channel() support for DT platforms Matt Porter
2012-09-20 22:09 ` Tony Lindgren
2012-09-21 8:16 ` Arnd Bergmann
2012-09-21 15:42 ` Tony Lindgren
[not found] ` <20120921154247.GZ28835-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2012-09-21 18:37 ` Matt Porter
2012-09-27 9:36 ` Vinod Koul
2012-10-01 16:37 ` Matt Porter
2012-09-20 14:43 ` [RFC PATCH 11/13] spi: omap2-mcspi: add generic DMA request support to the DT binding Matt Porter
2012-09-20 14:43 ` [RFC PATCH 12/13] ARM: dts: add am33xx EDMA support Matt Porter
2012-09-20 14:43 ` [RFC PATCH 13/13] Documentation: add schedule for removing private EDMA API Matt Porter
2012-09-20 15:58 ` Mark Brown
2012-09-20 16:05 ` Matt Porter
2012-09-21 8:27 ` [RFC PATCH 00/13] DMA Engine support for AM33xx Hebbar, Gururaja
2012-09-21 18:22 ` Matt Porter
2012-09-24 11:26 ` Hebbar, Gururaja
2012-09-24 12:05 ` Matt Porter [this message]
2012-09-26 8:26 ` Hebbar, Gururaja
2012-09-26 13:01 ` Matt Porter
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=20120924120512.GM16522@beef \
--to=mporter@ti.com \
--cc=arnd@arndb.de \
--cc=b-cousson@ti.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=cjb@laptop.org \
--cc=davinci-linux-open-source@linux.davincidsp.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=djbw@fb.com \
--cc=grant.likely@secretlab.ca \
--cc=gururaja.hebbar@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=rob.herring@calxeda.com \
--cc=rob@landley.net \
--cc=spi-devel-general@lists.sourceforge.net \
--cc=tony@atomide.com \
--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).