On Wed, Apr 22, 2009 at 4:56 AM, Joonyoung Shim jy0922.shim@samsung.comwrote:
Add checking in hw_params and prepare to detect bufferless pcms(i.e. BT <--> codec).
Signed-off-by: Joonyoung Shim jy0922.shim@samsung.com
sound/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, struct omap_pcm_dma_data *dma_data = rtd->dai->cpu_dai->dma_data; int err = 0;
/* return if this is a bufferless transfer e.g.
* codec <--> BT codec or GSM modem -- lg FIXME */ if (!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?