[alsa-devel] [PATCH] ASoC: OMAP: Add checking to detect bufferless pcms

Joonyoung Shim jy0922.shim at samsung.com
Wed Apr 22 11:48:00 CEST 2009


On 4/22/2009 5:30 PM, Jarkko Nikula wrote:
> On Wed, Apr 22, 2009 at 4:56 AM, Joonyoung Shim <jy0922.shim at samsung.com
> <mailto:jy0922.shim at samsung.com>> wrote:
> 
>     Add checking in hw_params and prepare to detect bufferless pcms(i.e. BT
>     <--> codec).
> 
>     Signed-off-by: Joonyoung Shim <jy0922.shim at samsung.com
>     <mailto:jy0922.shim at samsung.com>>
>     ---
>     쟳ound/soc/omap/omap-pcm.c |    9 ++++++++-
>      1 files changed, 8 insertions(+), 1 deletions(-)
> 
>     diff --git a/sound/soc/omap/omap-pcm.c b/sound/soc/omap/omap-pcm.c
>     index 07cf7f4..6454e15 100644
>     --- a/sound/soc/omap/omap-pcm.c
>     +++ b/sound/soc/omap/omap-pcm.c
>     @@ -87,8 +87,10 @@ static int omap_pcm_hw_params(struct
>     snd_pcm_substream *substream,
>           쟳truct omap_pcm_dma_data *dma_data = rtd->dai->cpu_dai->dma_data;
>           쟧nt err = 0;
> 
>     +       /* return if this is a bufferless transfer e.g.
>     +        * codec <--> BT codec or GSM modem -- lg FIXME */
>           쟧f (!dma_data)
>     -               return -ENODEV;
>     +               return 0;
> 
> 
> I see exactly similar lines in s3c24xx-pcm.c but don't point now the use
> case where this is used and I don't have idea what is this all about.
> 
> Is this something where DAI driver or another end of connection is used
> to provide clocking and the whole setup is then controlled with ALSA PCM
> API? Somehow I have the feeling that would there be a better way to
> achieve it than with dummy bufferless transfer?

I tested this patch with the omap3 target having the twl4030 codec. The
twl4030 codec driver supports the voice DAI to transfer pcm data between
modem and codec, and i added for test the dummy voice DAI in machine
driver. To transfer pcm data at modem <--> codec doesn't need DMA.

> 
> 
> -- 
> Jarkko



More information about the Alsa-devel mailing list