[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20170728084206.4431-1-cychiang@chromium.org>
Date: Fri, 28 Jul 2017 16:42:06 +0800
From: Cheng-Yi Chiang <cychiang@...omium.org>
To: linux-arm-kernel@...ts.infradead.org
Cc: Liam Girdwood <lgirdwood@...il.com>,
Mark Brown <broonie@...nel.org>,
Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.com>,
"U . Artie Eoff" <ullysses.a.eoff@...el.com>,
alsa-devel@...a-project.org, linux-kernel@...r.kernel.org
Subject: [PATCH] ASoC: Intel: Reset hw_ptr on resume trigger
From: "U. Artie Eoff" <ullysses.a.eoff@...el.com>
Reset the hw_ptr before queuing the restore_stream_context
work to eradicate a nasty white audio noise on resume.
Signed-off-by: U. Artie Eoff <ullysses.a.eoff@...el.com>
---
sound/soc/intel/baytrail/sst-baytrail-pcm.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sound/soc/intel/baytrail/sst-baytrail-pcm.c b/sound/soc/intel/baytrail/sst-baytrail-pcm.c
index 4765ad474544..e0db7070cd42 100644
--- a/sound/soc/intel/baytrail/sst-baytrail-pcm.c
+++ b/sound/soc/intel/baytrail/sst-baytrail-pcm.c
@@ -187,8 +187,10 @@ static int sst_byt_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
sst_byt_stream_start(byt, pcm_data->stream, 0);
break;
case SNDRV_PCM_TRIGGER_RESUME:
- if (pdata->restore_stream == true)
+ if (pdata->restore_stream == true) {
+ pcm_data->hw_ptr = 0;
schedule_work(&pcm_data->work);
+ }
else
sst_byt_stream_resume(byt, pcm_data->stream);
break;
--
2.12.2
Powered by blists - more mailing lists