linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v7 01/10] ARM: davinci: move private EDMA API to arm/common
Date: Sat, 2 Feb 2013 13:02:51 -0800	[thread overview]
Message-ID: <20130202210251.GE577@atomide.com> (raw)
In-Reply-To: <20130202194853.GT2244@beef>

* Matt Porter <mporter@ti.com> [130202 11:51]:
> On Sat, Feb 02, 2013 at 10:16:43AM -0800, Tony Lindgren wrote:
> > * Matt Porter <mporter@ti.com> [130202 10:10]:
> > > If it doesn't work, work with Vinod to fix the api. It's expected,
> > > I'm working on dmaengine API changes right now to deal with a
> > > limitation of EDMA that needs to be abstracted.
> > 
> > Regarding the DMA API limitations, I'm only aware of lack of capability
> > to configure autoincrement at the device end. And that keeps us from
> > converting all GPMC related devices using omap SDMA to use the DMA API.
> > 
> > Are there other limitations currently known with the DMA API?
> 
> Yes, I called one out when this was first posted as an RFC and was
> working it in parallel with this support. This one blocks AM33XX support
> in mmc and is the reason I split all of the mmc support out of the base
> edma dmaengine for am33xx series. Independent of the blockage, whatever
> we finally settle on to address this API need will also cleanup the use
> of magic values in the davinci mmc driver (that's part of the second
> thread below).
> 
> RFC posting:
> https://patchwork.kernel.org/patch/1583531/
> Posting with initial attempt at a caps api:
> http://www.spinics.net/lists/linux-mmc/msg18351.html

OK thanks for the links, good to hear at least some work is happening
on it.

> Also, I haven't fully vetted the situation with cyclic transfers and
> EDMA, however, I'm pretty sure that we'll need some API changes there.
> The reason is that some Davinci platforms have no FIFO on their McASP
> implementation (that was a new feature added on DA8xx and also AM33xx).
> As such they have audio support implemented using ping-pong buffering
> via an SRAM buffer. There's been a number of patches ahead of all this
> that myself and others have worked upstream to get the SRAM stuff to be
> Davinci-independent (genalloc). But, at the end of all of this, there's
> no notion in a cyclic transfer of doing synchronized ping-pong buffering
> using two chain channels. This is how it is implemented (and documented
> in EDMA docs going back to the DSPs this IP first showed up on) using
> the private API. I'll be looking at this soon, but, I'm more interested
> in 1) getting the base support in 2) then the mmc stuff blocking DT
> populated platforms using omap_hsmmc (split out and posted) 3) v3 of the
> caps api w/ vinod's concerns address (working it not)
> 
> Normally, I'm not going to bring up the cyclic transfer issue until I
> have some code to show or reference for discussion...but it's worth
> being aware. But, in any case, I'm confident that will gate having the
> mcasp driver that am33xx also uses converted to dmaengine.  Except for
> the gpmc limitation you menationed, that's the last in kernel user of
> the privat edma api needed to be converted such that we can kill off
> arch/arm/common/edma.c once it's taken in.

And then there's the case of device-to-device DMA that we're not
currently doing luckily. And I don't think I've even seen that being
used so we probably don't need to worry about that one right now.

Regards,

Tony

  reply	other threads:[~2013-02-02 21:02 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-01 18:22 [PATCH v7 00/10] DMA Engine support for AM33XX Matt Porter
2013-02-01 18:22 ` [PATCH v7 01/10] ARM: davinci: move private EDMA API to arm/common Matt Porter
2013-02-01 18:41   ` Tony Lindgren
2013-02-02 12:49     ` Russell King - ARM Linux
2013-02-02 14:44       ` Matt Porter
     [not found]   ` <5022f635a527470dbd0be932063e9cd2@DFLE72.ent.ti.com>
2013-02-01 18:49     ` Matt Porter
     [not found]       ` <2077c13e12314dc3adc8e5b653855da0@DFLE72.ent.ti.com>
2013-02-01 18:59         ` Matt Porter
2013-02-02  0:01           ` Sergei Shtylyov
2013-02-02 12:45           ` Russell King - ARM Linux
2013-02-02 17:27             ` Sergei Shtylyov
     [not found]           ` <e9be6668da8b4372a04687847daa1d8c@DFLE72.ent.ti.com>
2013-02-02 18:07             ` Matt Porter
2013-02-02 18:16               ` Tony Lindgren
2013-02-02 19:48                 ` Matt Porter
2013-02-02 21:02                   ` Tony Lindgren [this message]
2013-02-02 19:06               ` Sergei Shtylyov
     [not found]               ` <3245316d7aa94b2e823f98b69497547d@DLEE74.ent.ti.com>
2013-02-02 19:55                 ` Matt Porter
2013-02-02 20:18                   ` Sergei Shtylyov
2013-02-01 19:52       ` Sergei Shtylyov
2013-02-01 18:58         ` Felipe Balbi
2013-02-01 20:49           ` Sergei Shtylyov
2013-02-01 20:56             ` Felipe Balbi
2013-02-01 21:30               ` Russell King - ARM Linux
2013-02-02  0:07                 ` Sergei Shtylyov
2013-02-02  0:44                   ` Russell King - ARM Linux
2013-02-02  2:09                     ` Sergei Shtylyov
2013-02-02 10:18                       ` Russell King - ARM Linux
2013-02-02 12:17                         ` Russell King - ARM Linux
2013-02-02 17:02                           ` Sergei Shtylyov
2013-02-02 16:27                         ` Sergei Shtylyov
2013-02-02 16:45                           ` Russell King - ARM Linux
2013-02-02 17:17                             ` Sergei Shtylyov
2013-02-04 14:27                   ` Arnd Bergmann
2013-02-02  0:13                 ` Sergei Shtylyov
2013-02-04 15:41                 ` Felipe Balbi
2013-02-04 15:45                   ` Russell King - ARM Linux
2013-02-04 17:36                   ` Sergei Shtylyov
2013-02-04 16:47                     ` Felipe Balbi
2013-02-04 17:10                       ` Russell King - ARM Linux
2013-02-04 17:54                       ` Sergei Shtylyov
2013-02-04 17:02                         ` Felipe Balbi
2013-02-04 18:22                           ` Sergei Shtylyov
2013-02-04 19:22                           ` Cyril Chemparathy
2013-02-04 20:29                             ` Linus Walleij
2013-02-04 20:33                               ` Mark Brown
2013-02-04 21:11                                 ` Linus Walleij
2013-02-04 21:47                                   ` Arnd Bergmann
2013-02-05 12:38                                     ` Russell King - ARM Linux
2013-02-05 15:37                                       ` Cyril Chemparathy
2013-02-04 21:54                                   ` Cyril Chemparathy
2013-02-05 12:41                                     ` Russell King - ARM Linux
2013-02-05 15:42                                       ` Cyril Chemparathy
2013-02-05 15:30                                     ` Linus Walleij
2013-02-05 17:14                                       ` Russell King - ARM Linux
2013-02-05 18:33                                         ` Linus Walleij
2013-02-04 22:30                               ` Cyril Chemparathy
2013-02-05 16:21                                 ` Linus Walleij
2013-02-05 16:47                                   ` Mark Brown
2013-02-05 17:06                                     ` Russell King - ARM Linux
2013-02-05 17:41                                       ` Mark Brown
2013-02-05 18:29                                     ` Linus Walleij
2013-02-05 19:45                                       ` Cyril Chemparathy
2013-02-05 18:28                   ` Tony Lindgren
2013-02-05 22:26                     ` Arnd Bergmann
2013-02-06  7:45                       ` Felipe Balbi
2013-02-01 23:10               ` Sergei Shtylyov
2013-02-09 16:05   ` Sekhar Nori
2013-02-09 20:08     ` Russell King - ARM Linux
2013-03-04 22:05     ` Matt Porter
     [not found]     ` <e92425fefcc04bb4ab739ec8d4e82672@DLEE74.ent.ti.com>
2013-03-04 22:12       ` Matt Porter
2013-02-01 18:22 ` [PATCH v7 02/10] ARM: edma: remove unused transfer controller handlers Matt Porter
2013-02-01 18:22 ` [PATCH v7 03/10] ARM: edma: add AM33XX support to the private EDMA API Matt Porter
2013-02-01 18:22 ` [PATCH v7 04/10] dmaengine: edma: enable build for AM33XX Matt Porter
2013-02-01 18:22 ` [PATCH v7 05/10] dmaengine: edma: Add TI EDMA device tree binding Matt Porter
2013-02-01 18:26   ` Matt Porter
2013-02-01 18:22 ` [PATCH v7 06/10] ARM: dts: add AM33XX EDMA support Matt Porter
2013-02-01 18:22 ` [PATCH v7 07/10] dmaengine: add dma_request_slave_channel_compat() Matt Porter
2013-02-01 18:28   ` Matt Porter
2013-02-12 16:38   ` Vinod Koul
2013-02-01 18:22 ` [PATCH v7 08/10] spi: omap2-mcspi: convert to dma_request_slave_channel_compat() Matt Porter
2013-02-01 18:22 ` [PATCH v7 09/10] spi: omap2-mcspi: add generic DMA request support to the DT binding Matt Porter
2013-02-01 18:22 ` [PATCH v7 10/10] ARM: dts: add AM33XX SPI DMA support Matt Porter
2013-02-01 18:32 ` [PATCH v7 00/10] DMA Engine support for AM33XX 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=20130202210251.GE577@atomide.com \
    --to=tony@atomide.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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).