diff options
| -rw-r--r-- | sound/soc/omap/omap-pcm.c | 7 | 
1 files changed, 6 insertions, 1 deletions
diff --git a/sound/soc/omap/omap-pcm.c b/sound/soc/omap/omap-pcm.c index f0feb06615f..02eeb2e7ced 100644 --- a/sound/soc/omap/omap-pcm.c +++ b/sound/soc/omap/omap-pcm.c @@ -165,7 +165,12 @@ static int omap_pcm_prepare(struct snd_pcm_substream *substream)  	memset(&dma_params, 0, sizeof(dma_params));  	dma_params.data_type			= dma_data->data_type;  	dma_params.trigger			= dma_data->dma_req; -	dma_params.sync_mode			= dma_data->sync_mode; + +	if (dma_data->packet_size) +		dma_params.sync_mode = OMAP_DMA_SYNC_PACKET; +	else +		dma_params.sync_mode = OMAP_DMA_SYNC_ELEMENT; +  	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {  		dma_params.src_amode		= OMAP_DMA_AMODE_POST_INC;  		dma_params.dst_amode		= OMAP_DMA_AMODE_CONSTANT;  |