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

Cheng-yi Chiang cychiang at chromium.org
Tue Aug 1 06:42:35 CEST 2017


Hi Eoff, thank you for the patch and providing the context.
ChromiumOS now uses kernel 4.4 for BYT and I found that kernel 4.4 does not
have this patch.
We thought this should be useful in upstream.
Thanks!

On Tue, Aug 1, 2017 at 12:32 PM, Eoff, Ullysses A <ullysses.a.eoff at intel.com
> wrote:

> This patch was originally submitted in the context of the ChromiumOS
> kernel 3.10 for BYT (https://groups.google.com/a/
> chromium.org/forum/#!topic/chromium-os-reviews/AsoBhfHzQg8).
>
>
> > -----Original Message-----
> > From: Koul, Vinod
> > Sent: Monday, July 31, 2017 8:30 PM
> > To: Cheng-Yi Chiang <cychiang at chromium.org>; Jie, Yang <
> yang.jie at intel.com>
> > Cc: linux-kernel at vger.kernel.org; Liam Girdwood <lgirdwood at gmail.com>;
> Mark Brown <broonie at kernel.org>; Jaroslav Kysela
> > <perex at perex.cz>; Takashi Iwai <tiwai at suse.com>; Eoff, Ullysses A <
> ullysses.a.eoff at intel.com>; alsa-devel at alsa-project.org
> > Subject: Re: [PATCH v2] ASoC: Intel: Reset hw_ptr on resume trigger
> >
> > On Mon, Jul 31, 2017 at 06:47:34PM +0800, Cheng-Yi Chiang wrote:
> > > From: "U. Artie Eoff" <ullysses.a.eoff at 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 at chromium.org>
> > > Signed-off-by: U. Artie Eoff <ullysses.a.eoff at intel.com>
> > > Signed-off-by: Cheng-Yi Chiang <cychiang at 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;
> > >                     schedule_work(&pcm_data->work);
> > > +           }
> > >             else
> > >                     sst_byt_stream_resume(byt, pcm_data->stream);
> > >             break;
> > > --
> > > 2.12.2
> > >
> >
> > --
> > ~Vinod
>


More information about the Alsa-devel mailing list