From: Matt Porter <mporter@ti.com>
To: "Shilimkar, Santosh" <santosh.shilimkar@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: [PATCH v5 00/14] DMA Engine support for AM33XX
Date: Thu, 24 Jan 2013 15:49:43 -0500 [thread overview]
Message-ID: <20130124204943.GE5256@beef> (raw)
In-Reply-To: <8ea1d227d84648f68e670c56f27c481e@DFLE72.ent.ti.com>
On Thu, Jan 24, 2013 at 05:12:05AM +0000, Shilimkar, Santosh wrote:
> On Thursday 24 January 2013 02:19 AM, Matt Porter wrote:
> > On Wed, Jan 23, 2013 at 04:37:55PM +0530, Santosh Shilimkar wrote:
> >> Matt,
> >>
> >> On Wednesday 16 January 2013 02:02 AM, Matt Porter 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.
> >>>
> >>> The series applies on top of 3.8-rc3 and the following patches:
> >>>
> >>> - TPS65910 REGMAP_IRQ build fix:
> >>> https://patchwork.kernel.org/patch/1857701/
> >>> - dmaengine DT support from Vinod's dmaengine_dt branch in
> >>> git://git.infradead.org/users/vkoul/slave-dma.git since
> >>> 027478851791df751176398be02a3b1c5f6aa824
> >>> - edma dmaengine driver fix:
> >>> https://patchwork.kernel.org/patch/1961521/
> >>> - dmaengine dma_get_channel_caps v2:
> >>> https://patchwork.kernel.org/patch/1961601/
> >>> - dmaengine edma driver channel caps support v2:
> >>> https://patchwork.kernel.org/patch/1961591/
> >>>
> >>> 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.
> >>>
> >>> With this series both BeagleBone and the AM335x EVM have working
> >>> MMC and SPI support.
> >>>
> >>> This is tested on BeagleBone with a SPI framebuffer driver and MMC
> >>> rootfs. A trivial gpio DMA event misc driver was used to test the
> >>> crossbar DMA event support. It is also tested on the AM335x EVM
> >>> with the onboard SPI flash and MMC rootfs. The branch at
> >>> https://github.com/ohporter/linux/tree/edma-dmaengine-am33xx-v4
> >>> has the complete series, dependencies, and some test
> >>> drivers/defconfigs.
> >>>
> >>> Regression testing was done on AM180x-EVM (which also makes use
> >>> of the EDMA dmaengine driver and the EDMA private API) using SD,
> >>> SPI flash, and the onboard audio supported by the ASoC Davinci
> >>> driver. Regression testing was also done on a BeagleBoard xM
> >>> booting from the legacy board file using MMC rootfs.
> >>>
> >>> Matt Porter (14):
> >>> ARM: davinci: move private EDMA API to arm/common
> >>> ARM: edma: remove unused transfer controller handlers
> >>> ARM: edma: add AM33XX support to the private EDMA API
> >>> dmaengine: edma: enable build for AM33XX
> >>> dmaengine: edma: Add TI EDMA device tree binding
> >>> ARM: dts: add AM33XX EDMA support
> >>> dmaengine: add dma_request_slave_channel_compat()
> >>> mmc: omap_hsmmc: convert to dma_request_slave_channel_compat()
> >>> mmc: omap_hsmmc: set max_segs based on dma engine limitations
> >>> mmc: omap_hsmmc: add generic DMA request support to the DT binding
> >>> ARM: dts: add AM33XX MMC support
> >>> spi: omap2-mcspi: convert to dma_request_slave_channel_compat()
> >>> spi: omap2-mcspi: add generic DMA request support to the DT binding
> >>> ARM: dts: add AM33XX SPI DMA support
> >>>
> >> While going through the series and testing it out, I observed an issue
> >> with MMC driver. You need patch in the end of the email to avoid the
> >> issue. Same is attached in case mailer damages it. Can you please
> >> add it with your series if you agree ?
> >
> > Yes, by inspection this makes sense. As you noticed, we've been relying
> > on the fact that DMA resources still don't come from DT, we only use our
> > DT data in conjunction with the DMA OF helpers to do channel filtering.
> > I was figuring we would address that separately later, but I see how
> > even omap4 has this issue with DMA resources named with "tx1", for
> > example. A good followup once this series is taken will be to only
> > use hwmod resources on a !populated-dt platform like we do for other
> > resources now. Baby steps. :)
> >
> We are already on it :-)
Great!
> > Thanks for the catch, I'll add this in with your tested line as well for
> > the series.
BTW, since I'm dropping mmc support from this series, I'll move your
patch into a separate series with only the mmc pieces.
-Matt
next prev parent reply other threads:[~2013-01-24 20:49 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-15 20:32 [PATCH v5 00/14] DMA Engine support for AM33XX Matt Porter
[not found] ` <1358281974-8411-1-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2013-01-15 20:32 ` [PATCH v5 01/14] ARM: davinci: move private EDMA API to arm/common Matt Porter
2013-01-15 20:32 ` [PATCH v5 02/14] ARM: edma: remove unused transfer controller handlers Matt Porter
2013-01-15 20:32 ` [PATCH v5 03/14] ARM: edma: add AM33XX support to the private EDMA API Matt Porter
2013-01-28 19:27 ` Andy Shevchenko
[not found] ` <CAHp75VeFZ19CCL-4huLNWbsXT-8sGrcvtxN=Dm0s+ojNA3w-3g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-01-30 6:41 ` Matt Porter
2013-01-30 7:40 ` Andy Shevchenko
2013-01-31 1:31 ` Matt Porter
2013-01-15 20:32 ` [PATCH v5 04/14] dmaengine: edma: enable build for AM33XX Matt Porter
2013-01-15 20:32 ` [PATCH v5 05/14] dmaengine: edma: Add TI EDMA device tree binding Matt Porter
2013-01-15 20:32 ` [PATCH v5 06/14] ARM: dts: add AM33XX EDMA support Matt Porter
2013-01-15 20:32 ` [PATCH v5 07/14] dmaengine: add dma_request_slave_channel_compat() Matt Porter
[not found] ` <1358281974-8411-8-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
2013-01-23 22:28 ` Arnd Bergmann
2013-01-30 6:36 ` Matt Porter
2013-01-28 19:34 ` Andy Shevchenko
[not found] ` <CAHp75VeqikcTuOd14utb9E0P3b9t1mr=JsmkAbz5=3FJwU2kFA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-01-28 19:57 ` Arnd Bergmann
2013-01-15 20:32 ` [PATCH v5 08/14] mmc: omap_hsmmc: convert to dma_request_slave_channel_compat() Matt Porter
2013-01-15 20:32 ` [PATCH v5 09/14] mmc: omap_hsmmc: set max_segs based on dma engine limitations Matt Porter
2013-01-15 20:32 ` [PATCH v5 10/14] mmc: omap_hsmmc: add generic DMA request support to the DT binding Matt Porter
2013-01-15 20:32 ` [PATCH v5 11/14] ARM: dts: add AM33XX MMC support Matt Porter
2013-01-15 20:32 ` [PATCH v5 12/14] spi: omap2-mcspi: convert to dma_request_slave_channel_compat() Matt Porter
2013-01-15 20:32 ` [PATCH v5 13/14] spi: omap2-mcspi: add generic DMA request support to the DT binding Matt Porter
2013-01-15 20:32 ` [PATCH v5 14/14] ARM: dts: add AM33XX SPI DMA support Matt Porter
2013-01-22 15:56 ` [PATCH v5 00/14] DMA Engine support for AM33XX Sekhar Nori
2013-01-23 2:21 ` Mark Brown
[not found] ` <20130123022133.GA5727-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2013-01-23 10:49 ` Sekhar Nori
2013-01-23 21:37 ` Matt Porter
2013-01-24 5:14 ` Sekhar Nori
[not found] ` <d07dbfd50690423b903803720152c0dc@DLEE74.ent.ti.com>
2013-01-24 20:42 ` Matt Porter
2013-01-23 11:07 ` Santosh Shilimkar
[not found] ` <50FFC48B.80902-l0cyMroinI0@public.gmane.org>
2013-01-23 20:49 ` Matt Porter
2013-01-24 5:12 ` Santosh Shilimkar
[not found] ` <8ea1d227d84648f68e670c56f27c481e@DFLE72.ent.ti.com>
2013-01-24 20:49 ` Matt Porter [this message]
2013-01-25 7:02 ` Santosh Shilimkar
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=20130124204943.GE5256@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=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=santosh.shilimkar@ti.com \
--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).