Re: delayed dma trigger

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Mon, 23 Oct 2006 16:31:07 +0200,
Johannes Berg wrote:
> 
> > > Right, but prepare can sleep as well so it's easy to do. Though if the
> > > prepare doesn't actually change anything, couldn't we not stop the DMA
> > > and just continue?
> > 
> > It's up to you.  My point is the prepare callback is called anyway,
> > and if you want to resolve the DMA call conflict, prepare callback is
> > the right place.  But, if trigger(START) checks whether the DMA is
> > already is running and just continues, then yes, you don't have to
> > wait in prepare.
> 
> But is prepare also called between pause/resume? I was assuming it
> isn't.

It won't be called unless PCM_INFO_PAUSE bit flag is set.  It means
that the driver doesn't support the hardware pause/resume function.
The pseudo pause/resume is just like a stop -> reset -> start
sequence.

In other words, once when you set SNDRV_PCM_INFO_PAUSE flag, the
driver has to stop the stream by trigger(PAUSE_PUSH) and restart the
stream by trigger(PAUSE_RELEASE) call without prepare callback.


Takashi

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux