Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752094AbdHGGbZ (ORCPT ); Mon, 7 Aug 2017 02:31:25 -0400 Received: from mga11.intel.com ([192.55.52.93]:63231 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752011AbdHGGbY (ORCPT ); Mon, 7 Aug 2017 02:31:24 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,336,1498546800"; d="scan'208";a="887245072" Subject: Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger To: Cheng-yi Chiang Cc: alsa-devel@alsa-project.org, Liam Girdwood , Vinod Koul , linux-kernel@vger.kernel.org, Takashi Iwai , Mark Brown , Jarkko Nikula , "U . Artie Eoff" References: <20170731104734.5776-1-cychiang@chromium.org> <20170801033006.GL3053@localhost> <60e20968-28b2-dd91-c30c-318aee9d298f@linux.intel.com> From: Keyon Jie Message-ID: <91a1fb3d-b2a3-e40e-8f87-08768b9da1bd@linux.intel.com> Date: Mon, 7 Aug 2017 14:36:04 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3126 Lines: 92 On 2017年08月03日 21:47, Cheng-yi Chiang wrote: > +Jarkko Nikula > > Hi Keyon, > Sorry for the late reply. I spent some time trying to figure out > previous suspend resume patch in BYT. > > From the patch for restore_stream flag: > https://patchwork.kernel.org/patch/4706611/, the restore_stream flag > means that ADSP was in power off state during system suspend/resume > cycle. You are right that the resuming won't play from the pausing > point of the last suspending. I am not sure whether it is intended in > ADSP coming back from power off case. Jarkko and Ullysses might have > better idea on this. > > In my testing I have found that this patch sometimes causes playback > failure upon resume. I have put the logs in > https://bugs.chromium.org/p/chromium/issues/detail?id=752107. I think > we should not merge this until it is resolved. I have cc'ed Intel > folks on the issue. Thanks for investigation on it, so looks it's better to root cause and fix this noise issue, other than workaround to reset pcm_data->hw_ptr which may introduce new issues. Thanks, ~Keyon > > Thanks! > > On Tue, Aug 1, 2017 at 1:04 PM, Keyon Jie wrote: >> >> On 2017年08月01日 11:30, Vinod Koul wrote: >>> >>> On Mon, Jul 31, 2017 at 06:47:34PM +0800, Cheng-Yi Chiang wrote: >>>> >>>> From: "U. Artie Eoff" >>>> >>>> Reset the hw_ptr before queuing the restore_stream_context >>>> work to eradicate a nasty white audio noise on resume. >>> >>> >>> Liam, Jie? This on legacy BYT driver.. >>> >>>> >>>> Tested-by: Cheng-Yi Chiang >>>> Signed-off-by: U. Artie Eoff >>>> Signed-off-by: Cheng-Yi Chiang >>>> --- >>>> 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; >> >> >> Won't this break the hw_ptr and make the resuming won't play from the >> pausing point of the last suspending? >> >> Thanks, >> ~Keyon >> >> >>>> schedule_work(&pcm_data->work); >>>> + } >>>> else >>>> sst_byt_stream_resume(byt, pcm_data->stream); >>>> break; >>>> -- >>>> 2.12.2 >>>> >>> >> > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@alsa-project.org > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel >