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

Eoff, Ullysses A ullysses.a.eoff at intel.com
Tue Aug 1 06:32:56 CEST 2017


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