BEATS: htc sound buffers for beats
/sound/soc/soc-core.c
blob:07351576e94f11718006741f2c18816616c1e725 -> blob:db201c072ee9867156b2f400201fdf03042906c1
--- sound/soc/soc-core.c
+++ sound/soc/soc-core.c
@@ -792,6 +792,7 @@ int soc_pcm_close(struct snd_pcm_substre
if (platform->driver->ops && platform->driver->ops->close)
platform->driver->ops->close(substream);
cpu_dai->runtime = NULL;
+ printk(KERN_INFO "[AUD] soc_pcm_close(), set runtume null\n");
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
/* start delayed pop wq here for playback streams */
@@ -1221,6 +1222,11 @@ int snd_soc_suspend(struct device *dev)
/* close any waiting streams and save state */
for (i = 0; i < card->num_rtd; i++) {
+ /* do not flush delayed work to trigger DAPM when DAi is ignore_suspend */
+ if (card->rtd[i].dai_link->ignore_suspend ||
+ card->rtd[i].dai_link->no_pcm)
+ continue;
+
flush_delayed_work_sync(&card->rtd[i].delayed_work);
card->rtd[i].codec->dapm.suspend_bias_level = card->rtd[i].codec->dapm.bias_level;
}