|
@@ -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;
|
|
|
|
|
|
snd_pcm_set_runtime_buffer(substream, &substream->dma_buffer);
|
|
|
runtime->dma_bytes = params_buffer_bytes(params);
|
|
@@ -134,6 +136,11 @@ static int omap_pcm_prepare(struct snd_pcm_substream *substream)
|
|
|
struct omap_pcm_dma_data *dma_data = prtd->dma_data;
|
|
|
struct omap_dma_channel_params dma_params;
|
|
|
|
|
|
+ /* return if this is a bufferless transfer e.g.
|
|
|
+ * codec <--> BT codec or GSM modem -- lg FIXME */
|
|
|
+ if (!prtd->dma_data)
|
|
|
+ return 0;
|
|
|
+
|
|
|
memset(&dma_params, 0, sizeof(dma_params));
|
|
|
/*
|
|
|
* Note: Regardless of interface data formats supported by OMAP McBSP
|