diff options
Diffstat (limited to 'sound/soc/omap')
-rw-r--r-- | sound/soc/omap/omap-mcpdm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/soc/omap/omap-mcpdm.c b/sound/soc/omap/omap-mcpdm.c index a1f48f1cc887..57824b676d55 100644 --- a/sound/soc/omap/omap-mcpdm.c +++ b/sound/soc/omap/omap-mcpdm.c @@ -659,7 +659,8 @@ static void omap_mcpdm_abe_dai_shutdown(struct snd_pcm_substream *substream, if (!dai->active) { if (!mcpdm->ul_active && substream->stream == SNDRV_PCM_STREAM_CAPTURE) { omap_mcpdm_capture_close(mcpdm, mcpdm->uplink); - if (!mcpdm->free && !mcpdm->dn_channels) + if (!mcpdm->free && !mcpdm->dn_channels && + !mcpdm->dl_active) omap_mcpdm_free(mcpdm); } if (!mcpdm->dl_active && substream->stream == SNDRV_PCM_STREAM_PLAYBACK) |