Re: asoc: fsl_dma_hw_free being called twice at end of playback

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

 



2010/5/4 Timur Tabi <timur@xxxxxxxxxxxxx>

> In my 8610 ASoC driver, I'm seeing the DMA driver's .hw_free function being
> called twice whenever playback ends.  I've added some printk's to
> demonstrate:
>
> snd_pcm_common_ioctl1:2543
> snd_pcm_hw_free:543
> soc_pcm_hw_free:761 c023983c
> fsl_dma_hw_free:720 substream=df029d00 dma_private=df440000 stream=0
> snd_pcm_release_substream:2022
> soc_pcm_hw_free:761 c023983c
> fsl_dma_hw_free:720 substream=df029d00 dma_private=df440000 stream=0
> fsl_dma_close:759 substream=df029d00 dma_private=df440000
>
> So the ioctl is being called only once, but the both snd_pcm_hw_free() and
> snd_pcm_release_substream() are calling the .hw_free function.
>
> Is this normal?  I don't know how to handle this, other than to add some
> boolean to my private data structure that indicates whether the resources
> have been freed or not.
>
> --
> Timur Tabi
> Linux kernel developer at Freescale
>

http://www.alsa-project.org/~tiwai/writing-an-alsa-driver/ch05s06.html#pcm-interface-operators-hw-free-callback

This function is always called before the close callback is called. Also,
the callback may be called multiple times, too. Keep track whether the
resource was already released.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/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