[lkml]   [2012]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH/RFC] dmaengine: add a slave parameter to __dma_request_channel()
On Mon, 12 Mar 2012, Vinod Koul wrote:

> On Fri, 2012-03-09 at 13:20 +0100, Guennadi Liakhovetski wrote:
> > It can be made to work as long as there's only one DMAC group with
> > configurable channels and all other DMACs are dedicated to specific
> > peripherals, yes. I don't know whether there are already now or are
> > approaching any platforms with multiple reconfigurable groups.
> And that is what I am talking about.
> Having specific channel mapping given by platform for all channels which
> are to be used dedicated. And a pool of channels which can be used by
> anyone (if they can be) on a platform.
> Does this proposal sound good for others as well. I think we can target
> this for next merge cycle, we are too late for the current one.

Ok, let me try to summarise, what this would mean for sh-mobile:

1. this proposal introduces a new special case: with or without a mapping,
that will have to be handled in affected client and DMA controller
drivers. E.g., on sh-mobile some devices might on some systems use
channels from "general purpose" DMA controllers (no mapping), on other
systems it will be a dedicated controller (fixed mapping).

2. this will break, if we get more than 1 "general purpose" type with
different supported client sets. So, we develop a new API with a
pre-programmed limitation.

3. this will mean a substantial driver and platform code modification.
Nothing super-complex, but still some.

4. we'll need a 3-stage channel allocation / configuration: request,
filter, config. Whereas with my configuration-parameter proposal it's just
one stage: allocate-and-configure.

So, yes, this would be doable, but it doesn't look like a very good
solution to me.

Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer

 \ /
  Last update: 2012-03-16 10:39    [W:0.115 / U:28.404 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site