All of lore.kernel.org
 help / color / mirror / Atom feed
* About snd_dmaengine_pcm_trigger()
@ 2014-03-05  5:20 Kuninori Morimoto
  2014-03-05  7:42 ` Lars-Peter Clausen
  0 siblings, 1 reply; 11+ messages in thread
From: Kuninori Morimoto @ 2014-03-05  5:20 UTC (permalink / raw)
  To: Mark Brown, Lars-Peter Clausen
  Cc: Linux-ALSA, Simon, Liam Girdwood, Kuninori Morimoto, Kuninori Morimoto

Hi Mark, Lars and all

I need your opinion

Now, I'm working for ${LINUX}/sound/soc/sh/fsi and ${LINUX}/sound/soc/sh/rcar drirvers.
These drivers are supporting DMAEngine transfer,
but it is using original DMAEngine method,
not using snd_dmaengine_pcm_trigger() or snd_dmaengine_pcm_register().
I was requested to use it from Mark.

The reason why I couldn't use it was our DMAEngine
didn't have "cyclic" tranfer support which is used on
dmaengine_pcm_prepare_and_submit()
But now, I created cyclic support on our DMA driver (on my local PC at this point)

Then, I noticed our drivers still can't use snd_dmaengine_pcm_xxx() method.

1st, our device needs PIO tranfer support too.
Current PIO/DMA transfer are sharing many methods/functions.
Code will become difficult to read if it is separated forcibly.
(to using snd_dmaengine_pcm_xxx())

2nd, our device DMA ON/OFF timing has relation ship to other register settings.
Unfortunately, our device is picky, it needs like this

               HW init setting -> DMA ON -> HW start setting

It can be solved if snd_dmaengine_pcm_xxx() has callbacks,
but many callbacks are needed...

3rd, our device needs special method on snd_pcm_ops
int the future.

>From my point of view,
our driver can replace to use "cyclic" DMA transfer
instead of current original DMAEngine method.
I guess, it is not difficult.
But, using snd_dmaengine_pcm_xxx() is difficult.

But, what do you think ?

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2014-03-12  0:28 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-05  5:20 About snd_dmaengine_pcm_trigger() Kuninori Morimoto
2014-03-05  7:42 ` Lars-Peter Clausen
2014-03-05  8:32   ` Kuninori Morimoto
2014-03-05  9:20     ` Lars-Peter Clausen
2014-03-06  0:22       ` Kuninori Morimoto
2014-03-06  4:36         ` Mark Brown
2014-03-06  4:39           ` Kuninori Morimoto
2014-03-11  4:47       ` Kuninori Morimoto
2014-03-11  9:47         ` Lars-Peter Clausen
2014-03-11  9:55           ` Mark Brown
2014-03-12  0:28             ` Kuninori Morimoto

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.