linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Matt Porter <mporter-l0cyMroinI0@public.gmane.org>
To: Sergei Shtylyov <sshtylyov-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
Cc: Linux DaVinci Kernel List
	<davinci-linux-open-source-VycZQUHpC/PFrsHnngEfi1aTQe2KTcn/@public.gmane.org>,
	Chris Ball <cjb-2X9k7bc8m7Mdnm+yROfE0A@public.gmane.org>,
	Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
	"Cousson, Benoit" <b-cousson-l0cyMroinI0@public.gmane.org>,
	Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
	Linux Documentation List
	<linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>,
	Devicetree Discuss
	<devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org>,
	Mark Brown
	<broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>,
	Linux MMC List
	<linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Linux Kernel Mailing List
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Rob Herring <rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org>,
	Vinod Koul <vinod.koul-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	Rob Landley <rob-VoJi6FS/r0vR7s880joybQ@public.gmane.org>,
	Dan Williams <djbw-b10kYP2dOMg@public.gmane.org>,
	Linux SPI Devel List
	<spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
	Linux OMAP List
	<linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Linux ARM Kernel List
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH v7 01/10] ARM: davinci: move private EDMA API to arm/common
Date: Sat, 2 Feb 2013 14:55:48 -0500	[thread overview]
Message-ID: <20130202195548.GU2244@beef> (raw)
In-Reply-To: <3245316d7aa94b2e823f98b69497547d-0VoBT8GTp4aIQmiDNMet8wC/G2K4zDHf@public.gmane.org>

On Sat, Feb 02, 2013 at 07:06:06PM +0000, Sergei Shtylyov wrote:
> Hello.
> 
> On 02-02-2013 22:07, Matt Porter wrote:
> 
> >>>>>>> Move mach-davinci/dma.c to common/edma.c so it can be used
> >>>>>>> by OMAP (specifically AM33xx) as well.
> 
> >>>>>> I think this should rather go to drivers/dma/?
> 
> >>>>> No, this is the private EDMA API. It's the analogous thing to
> >>>>> the private OMAP dma API that is in plat-omap/dma.c. The actual
> >>>>> dmaengine driver is in drivers/dma/edma.c as a wrapper around
> >>>>> this...same way OMAP DMA engine conversion is being done.
> 
> >>>>     Keeps me wondering why we couldn't have the same with CPPI 4.1 when I proposed
> >>>> that, instead of waiting indefinitely for TI to convert it to drivers/dma/
> >>>> directly. We could have working MUSB DMA on OMAP-L1x/Sitara all this time... Sigh.
> 
> >>> That is a shame. Yeah, I've pointed out that I was doing this exactly
> >>> the same way as was acceptable for the OMAP DMA conversion since it was
> >>> in RFC. The reasons are sound since in both cases, we have many drivers
> >>> to convert that need to continue using the private DMA APIs.
> 
> >>      In case of CPPI 4.1, we'd only have to convert MUSB DMA driver. Other
> >> in-tree CPPI 4.1 having SoCs don't use it for anything but MUSB -- it even is
> >> sub-block of their MUSB device, AFAIK (I maybe wrong about Sitaras -- I don't
> >> know them well).
> 
> > Well, it's pretty clear to me now that there's good reason for it not
> > landing in arch/arm/ so the obvious path is to do the dmaengine
> > conversion and put it in drivers/dma/ if it's really a generic dma engine.
> > I'm not sure why you express concern over the dma engine api not fitting
> > with CPPI 4.1?
> 
>     It's not a DMA controller only, it's 3 distinct devices, with the DMA 
> controller being one among them and using another one, the queue manager, as 
> some sort of proxy. The third device doesn't exist on OMAP-L1x SoCs -- it's 
> the buffer manager.

Interesting, and you don't see a way to have this split between
dmaengine and the musb driver? This all assumes there's even a match as
RMK did raise concerns elsewhere in this thread.

> > 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.
> 
>     Sorry, now it's TI's task. I no longer have time to work on this (my 
> internal project to push OMAP-L1x support upstream has expired at Sep 2010) 
> and my future in MV is very uncertain at this moment. Most probably I'll leave 
> it (or be forced to leave).

Too bad, it's certainly "somebody's task". The people employed by TI
have names too. ;) I suspect it falls to Felipe or Kishon these days,
but I try to avoid USB as it's generally a source of pain.

> > As pointed out, edma.c is already here in arch/arm/, so moving it doesn't
> > add something new. It does let us regression test all platforms that use it
> > (both Davinci and AM33xx) as I go through the conversion process.
> 
>     Could have been the same with CPPI 4.1 in theory if it was added to 
> mach-davinci/ back in 2009... we'd then only have to move it. EDMA code is 
> much older of course, so it's probably more justified.

Absolutely, timing is everything. I can assure you I've flamed enough
people "internally" about leaving this EDMA dmaengine conversion for so
long. As you might have guessed, AM33xx is a bit of a driver for it, but
all of this would have been quite a bit simpler had somebody taken a
little effort and moved edma to dmaengine years ago when slave dma
support was added to dmaengine. ;)

-Matt

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_jan

  parent reply	other threads:[~2013-02-02 19:55 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
     [not found] ` <1359742975-10421-1-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
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
2013-02-02 19:06                 ` Sergei Shtylyov
     [not found]                 ` <3245316d7aa94b2e823f98b69497547d@DLEE74.ent.ti.com>
     [not found]                   ` <3245316d7aa94b2e823f98b69497547d-0VoBT8GTp4aIQmiDNMet8wC/G2K4zDHf@public.gmane.org>
2013-02-02 19:55                     ` Matt Porter [this message]
2013-02-02 20:18                       ` Sergei Shtylyov
2013-02-01 19:52         ` Sergei Shtylyov
     [not found]           ` <510C1D0E.6030401-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
2013-02-01 18:58             ` Felipe Balbi
2013-02-01 20:49               ` Sergei Shtylyov
     [not found]                 ` <510C2A47.1090607-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
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
     [not found]                           ` <20130202004455.GX2637-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
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
     [not found]                                   ` <20130202121738.GZ2637-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-02 17:02                                     ` Sergei Shtylyov
     [not found]                                 ` <20130202101851.GY2637-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-02 16:27                                   ` Sergei Shtylyov
2013-02-02 16:45                                     ` Russell King - ARM Linux
     [not found]                                       ` <20130202164522.GC2637-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-02 17:17                                         ` Sergei Shtylyov
     [not found]                         ` <510C58DF.3010103-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
2013-02-04 14:27                           ` Arnd Bergmann
2013-02-02  0:13                       ` Sergei Shtylyov
     [not found]                       ` <20130201213003.GW2637-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
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
     [not found]                                 ` <510FF5C9.3030600-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
2013-02-04 17:02                                   ` Felipe Balbi
2013-02-04 18:22                                     ` Sergei Shtylyov
     [not found]                                     ` <20130204170216.GC4269-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>
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
     [not found]                                               ` <CACRpkdbPyZt8=pLhz-5qcaSSAk6VBn61dPTNp6teU9HksBwN2w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-02-04 21:47                                                 ` Arnd Bergmann
2013-02-05 12:38                                                   ` Russell King - ARM Linux
     [not found]                                                     ` <20130205123828.GB17852-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-05 15:37                                                       ` Cyril Chemparathy
2013-02-04 21:54                                                 ` Cyril Chemparathy
2013-02-05 12:41                                                   ` Russell King - ARM Linux
     [not found]                                                     ` <20130205124120.GC17852-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-05 15:42                                                       ` Cyril Chemparathy
2013-02-05 15:30                                                   ` Linus Walleij
2013-02-05 17:14                                                     ` Russell King - ARM Linux
     [not found]                                                       ` <20130205171451.GE17852-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2013-02-05 18:33                                                         ` Linus Walleij
     [not found]                                           ` <CACRpkdZihnp3_Df==QRWxQupgi7W_YXZxc-MxkusVH6J+Vx56A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-02-04 22:30                                             ` Cyril Chemparathy
     [not found]                                               ` <5110369B.9060901-l0cyMroinI0@public.gmane.org>
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
     [not found]                                                       ` <CACRpkdbeoMO1rjPiWDAuVL0uYwMGF+9-vCxqoMiMd1uAgZm=RQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-02-05 19:45                                                         ` Cyril Chemparathy
2013-02-05 18:28                           ` Tony Lindgren
     [not found]                             ` <20130205182848.GJ25185-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2013-02-05 22:26                               ` Arnd Bergmann
     [not found]                                 ` <201302052226.30754.arnd-r2nGTMty4D4@public.gmane.org>
2013-02-06  7:45                                   ` Felipe Balbi
2013-02-01 23:10                     ` Sergei Shtylyov
     [not found]     ` <1359742975-10421-2-git-send-email-mporter-l0cyMroinI0@public.gmane.org>
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>
     [not found]           ` <e92425fefcc04bb4ab739ec8d4e82672-0VoBT8GTp4aIQmiDNMet8wC/G2K4zDHf@public.gmane.org>
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 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: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:32 ` [PATCH v7 00/10] DMA Engine support " 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=20130202195548.GU2244@beef \
    --to=mporter-l0cymroini0@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=b-cousson-l0cyMroinI0@public.gmane.org \
    --cc=broonie-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org \
    --cc=cjb-2X9k7bc8m7Mdnm+yROfE0A@public.gmane.org \
    --cc=davinci-linux-open-source-VycZQUHpC/PFrsHnngEfi1aTQe2KTcn/@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=djbw-b10kYP2dOMg@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
    --cc=linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=rob-VoJi6FS/r0vR7s880joybQ@public.gmane.org \
    --cc=rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org \
    --cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=sshtylyov-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org \
    --cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org \
    --cc=vinod.koul-ral2JQCrhuEAvxtiuMwx3w@public.gmane.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).