Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1703138

Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger

From Cheng-yi Chiang <cychiang@chromium.org>
Newsgroups linux.kernel
Subject Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger
Date 2017-08-03 15:50 +0200
Message-ID <uaoFI-Fn-29@gated-at.bofh.it> (permalink)
References <u9gqS-5by-13@gated-at.bofh.it> <u9w2B-6pU-1@gated-at.bofh.it> <u9xrH-79w-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


+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!

On Tue, Aug 1, 2017 at 1:04 PM, Keyon Jie <yang.jie@linux.intel.com> 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" <ullysses.a.eoff@intel.com>
>>>
>>> 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 <cychiang@chromium.org>
>>> Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
>>> Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
>>> ---
>>>   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
>>>
>>
>

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger Vinod Koul <vinod.koul@intel.com> - 2017-08-01 05:30 +0200
  RE: [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger "Eoff, Ullysses A" <ullysses.a.eoff@intel.com> - 2017-08-01 06:40 +0200
  Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume  trigger Keyon Jie <yang.jie@linux.intel.com> - 2017-08-01 07:00 +0200
    Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger Cheng-yi Chiang <cychiang@chromium.org> - 2017-08-03 15:50 +0200
      Re: [alsa-devel] [PATCH v2] ASoC: Intel: Reset hw_ptr on resume  trigger Keyon Jie <yang.jie@linux.intel.com> - 2017-08-07 08:40 +0200

csiph-web