All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Bounine, Alexandre" <Alexandre.Bounine@idt.com>
To: Jassi Brar <jaswinder.singh@linaro.org>
Cc: "Williams, Dan J" <dan.j.williams@intel.com>,
	Vinod Koul <vinod.koul@intel.com>,
	Russell King <rmk@arm.linux.org.uk>,
	Barry Song <21cnbao@gmail.com>, <linux-kernel@vger.kernel.org>,
	DL-SHA-WorkGroupLinux <workgroup.linux@csr.com>,
	Dave Jiang <dave.jiang@intel.com>
Subject: RE: [PATCHv4] DMAEngine: Define interleaved transfer request api
Date: Tue, 18 Oct 2011 08:15:33 -0700	[thread overview]
Message-ID: <0CE8B6BE3C4AD74AB97D9D29BD24E55202322257@CORPEXCH1.na.ads.idt.com> (raw)
In-Reply-To: <CAJe_Zhd7j+30K4ho59XiBHtGpc4PagK-NcXmxGC1WSBudV5HHg@mail.gmail.com>

On Tue, Oct 18, 2011 at 10:55 AM, Jassi Brar <jaswinder.singh@linaro.org> wrote:
> 
> On 18 October 2011 19:21, Bounine, Alexandre
> <Alexandre.Bounine@idt.com> wrote:
> 
> >> > - there is no advance knowledge of which target device may require
> >> DMA
> >> >  service. A device driver for the particular target device is
> >> expected
> >> >  to request DMA service if required.
> >> >
> >> IMHO 1 channel per real device is an acceptable 'overhead'.
> >> Already many SoCs register dozens of channels but only a couple
> >> of them are actually used.
> >>
> > Is 64K of virtual channels per RIO port is acceptable?
> >
> I said 1 channel per _real_ device after enumeration, assuming status
> quo
> of no hotplug support. But you plan to implement hotplug soon, so that
> kills
> this option.
> Btw, is the RIO hotplug usage gonna look like USB or PCI?
I would say closer to USB with surprise insertion/removal.
But nothing is final here yet. There are some changes to
enumeration/discovery that we would like to see first.

> 
> >> >> > There is nothing that absence of full 66-bit addressing blocks
> >> now.
> >> >> > So far we are not aware about implementations that use 66-bit
> >> >> address.
> >> >> >
> >> >> Thanks for the important info.
> >> >> If I were you, I would postpone enabling support for 66-bit
> >> addressing
> >> >> esp when it soo affects the dmaengine API.
> >> >> Otherwise, you don't just code unused feature, but also put
> >> > constraints
> >> >> on development/up-gradation of the API in future, possibly,
> nearer
> >> > than
> >> >> real need of the feature.
> >> >>
> >> >> If we postpone 66-bit addressing to when it arrives, we can
> >> >> 1) Attach destID to the virtual channel's identity
> >> >> 2) Use device_prep_dma_memcpy so as to be able to change
> >> >>     target address for every transfer. Or use prep_slave,
> depending
> >> >>     upon nature of address at target endpoint.
> >> >> 3) Use slave_config to set wr_type if it remains same for enough
> >> >>     consecutive transfers to the same target (only you could
> strike
> >> >>     the balance between idealism and pragmatism).
> >> >>
> >> > With item #1 above being a separate topic, I may have a problem
> with
> >> #2
> >> > as well: dma_addr_t is sized for the local platform and not
> >> guaranteed
> >> > to be a 64-bit value (which may be required by a target).
> >> > Agree with #3 (if #1 and #2 work).
> >> >
> >> Perhaps simply change dma_addr_t to u64 in dmaengine.h alone ?
> >>
> > Adding an extra parameter to prep_slave_sg() looks much better to me.
> > That tweak for prep_dma_memcopy() may be more unsafe than the
> > extra param in prep_slave_sg().
> >
> To me the idea of making exception for RapidIO to add a new API looks
> even better. Anyways... whatever maintainers decide.

Both hands up for this! 

> 
> > Plus dma_memcopy does not fit logically for RIO as good as dma_slave.
> > For RIO we have only one buffer in local memory (as slave).
> > We just need to pass more info to the transfer prep routine.
> >
> From a client's POV a slave transfer is just a 'variation' of memcpy
> after the underlying channel has been configured appropriately. More so
> when even some Mem->Mem dmacs support physical channel configuration
> tweaking (PL330 in Samsung's SoCs do at least)
> So in an ideal world, there could be one generic 'prepare' and an
> optional
> 'slave_config' callback.
> OTOH I suspect I am overlooking something serious since nobody ever
> tried doing it. But this is a topic of different discussion.

  reply	other threads:[~2011-10-18 15:16 UTC|newest]

Thread overview: 121+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-12 11:14 [PATCH] DMAEngine: Define generic transfer request api Jassi Brar
2011-08-16 12:56 ` Koul, Vinod
2011-08-16 13:06   ` Linus Walleij
2011-08-19 13:43     ` Koul, Vinod
2011-08-19 14:19       ` Linus Walleij
2011-08-19 15:46         ` Jassi Brar
2011-08-19 17:28           ` Koul, Vinod
2011-08-19 18:45             ` Jassi Brar
2011-08-23 14:43       ` Matt Porter
2011-08-23 14:43         ` Matt Porter
2011-08-16 14:32   ` Jassi Brar
2011-09-15  7:46 ` [PATCHv2] " Jassi Brar
2011-09-15  8:22   ` Russell King
2011-09-15 10:02     ` Jassi Brar
2011-09-16  7:17   ` Barry Song
2011-09-16 11:03     ` Jassi Brar
2011-09-16  9:07   ` Vinod Koul
2011-09-16 12:30     ` Jassi Brar
2011-09-16 17:06       ` Vinod Koul
2011-09-16 17:51         ` Jassi Brar
2011-09-19  3:23           ` Vinod Koul
2011-09-20 12:12   ` [PATCHv3] DMAEngine: Define interleaved " Jassi Brar
2011-09-20 16:52     ` Vinod Koul
2011-09-20 18:08       ` Jassi Brar
2011-09-21  6:32         ` Vinod Koul
2011-09-21  6:45           ` Jassi Brar
2011-09-21  6:51             ` Vinod Koul
2011-09-21  7:31               ` Jassi Brar
2011-09-21 10:18                 ` Russell King
2011-09-21 15:21                   ` Jassi Brar
2011-09-28  6:39     ` [PATCHv4] " Jassi Brar
2011-09-28  9:03       ` Vinod Koul
2011-09-28 15:15         ` Jassi Brar
2011-09-29 11:17           ` Vinod Koul
2011-09-30  6:43             ` Barry Song
2011-09-30 16:01               ` Jassi Brar
2011-10-01  3:05                 ` Barry Song
2011-10-01 18:11                   ` Vinod Koul
2011-10-01 18:45                     ` Jassi Brar
2011-10-01 18:41                   ` Jassi Brar
2011-10-01 18:48                     ` Jassi Brar
2011-10-02  0:33                     ` Barry Song
2011-10-03  6:24                       ` Jassi Brar
2011-10-03 16:13                         ` Russell King
2011-10-03 16:19                           ` Jassi Brar
2011-10-03 17:15                             ` Williams, Dan J
2011-10-03 18:23                               ` Jassi Brar
2011-10-05 18:19                                 ` Williams, Dan J
2011-10-06  9:06                                   ` Jassi Brar
2011-10-05 18:14                             ` Williams, Dan J
2011-10-06  7:12                               ` Jassi Brar
2011-10-07  5:45                               ` Vinod Koul
2011-10-07 11:27                                 ` Jassi Brar
2011-10-07 14:19                                   ` Vinod Koul
2011-10-07 14:38                                     ` Jassi Brar
2011-10-10  6:53                                       ` Vinod Koul
2011-10-10  9:16                                         ` Jassi Brar
2011-10-10  9:18                                           ` Vinod Koul
2011-10-10  9:53                                             ` Jassi Brar
2011-10-10 10:45                                               ` Vinod Koul
2011-10-10 11:16                                                 ` Jassi Brar
2011-10-10 16:02                                                   ` Vinod Koul
2011-10-10 16:28                                                     ` Jassi Brar
2011-10-11 11:56                                                       ` Vinod Koul
2011-10-11 15:57                                                         ` Jassi Brar
2011-10-11 16:45                                                           ` Vinod Koul
2011-10-12  5:41                                                       ` Barry Song
2011-10-12  6:19                                                         ` Vinod Koul
2011-10-12  6:30                                                           ` Jassi Brar
2011-10-12  6:53                                                           ` Barry Song
2011-10-11 16:44                                   ` Williams, Dan J
2011-10-11 18:42                                     ` Jassi Brar
2011-10-14 18:11                                       ` Bounine, Alexandre
2011-10-14 17:50                                     ` Bounine, Alexandre
2011-10-14 18:36                                       ` Jassi Brar
2011-10-14 19:15                                         ` Bounine, Alexandre
2011-10-15 11:25                                           ` Jassi Brar
2011-10-17 14:07                                             ` Bounine, Alexandre
2011-10-17 15:16                                               ` Jassi Brar
2011-10-17 18:00                                                 ` Bounine, Alexandre
2011-10-17 19:29                                                   ` Jassi Brar
2011-10-17 21:07                                                     ` Bounine, Alexandre
2011-10-18  5:45                                                       ` Jassi Brar
2011-10-18  7:42                                                         ` Russell King
2011-10-18  8:30                                                           ` Jassi Brar
2011-10-18  8:26                                                             ` Vinod Koul
2011-10-18  8:37                                                               ` Jassi Brar
2011-10-18 14:44                                                                 ` Bounine, Alexandre
2011-10-18  9:49                                                             ` Russell King
2011-10-18 11:50                                                               ` Jassi Brar
2011-10-18 11:59                                                                 ` Russell King
2011-10-18 17:57                                                                 ` Bounine, Alexandre
2011-10-24  3:49                                                                   ` Vinod Koul
2011-10-24 12:36                                                                     ` Bounine, Alexandre
2011-10-24 15:27                                                                       ` Vinod Koul
2011-10-18 17:26                                                               ` Bounine, Alexandre
2011-10-18 17:35                                                                 ` Russell King
2011-10-18 17:53                                                                   ` Jassi Brar
2011-10-18 13:51                                                         ` Bounine, Alexandre
2011-10-18 14:54                                                           ` Jassi Brar
2011-10-18 15:15                                                             ` Bounine, Alexandre [this message]
2011-09-30 15:47             ` Jassi Brar
2011-10-13  7:03       ` [PATCHv5] " Jassi Brar
2011-10-14  7:32         ` Barry Song
2011-10-14 11:51           ` Jassi Brar
2011-10-14 13:31             ` Vinod Koul
2011-10-14 13:51               ` Jassi Brar
2011-10-14 14:05                 ` Vinod Koul
2011-10-14 14:18                   ` Vinod Koul
2011-10-14 14:55               ` Barry Song
2011-10-14 15:06                 ` Vinod Koul
2011-10-14 15:38                   ` Barry Song
2011-10-14 16:09                     ` Vinod Koul
2011-10-14 16:35                   ` Jassi Brar
2011-10-14 17:04                     ` Vinod Koul
2011-10-14 17:59                       ` Jassi Brar
2011-10-15 17:11                         ` Vinod Koul
2011-10-14 15:16         ` Vinod Koul
2011-10-14 15:50           ` Barry Song
2011-10-16 11:16           ` Jassi Brar
2011-10-16 12:16             ` Vinod Koul

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=0CE8B6BE3C4AD74AB97D9D29BD24E55202322257@CORPEXCH1.na.ads.idt.com \
    --to=alexandre.bounine@idt.com \
    --cc=21cnbao@gmail.com \
    --cc=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=jaswinder.singh@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rmk@arm.linux.org.uk \
    --cc=vinod.koul@intel.com \
    --cc=workgroup.linux@csr.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.