Re: broken sound since 5.4.3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Success, this will fix the regression. Thank you for the support and
merry christmas :-)

Am Donnerstag, den 19.12.2019, 17:24 -0500 schrieb Laura Abbott:
> On 12/19/19 3:59 PM, Stefani Seibold wrote:
> > Hi,
> > 
> > the current Linux Kernel is going kills my speakers of my monitor.
> > 
> > Audio level is always 100 at percent.
> > 
> > I broke down the issue to the following patch:
> > 
> > diff --git a/sound/hda/hdac_stream.c b/sound/hda/hdac_stream.c
> > index d8fe7ff0cd58..f9707fb05efe 100644
> > --- a/sound/hda/hdac_stream.c
> > +++ b/sound/hda/hdac_stream.c
> > @@ -96,12 +96,14 @@ void snd_hdac_stream_start(struct hdac_stream
> > *azx_dev, bool fresh_start)
> >   			      1 << azx_dev->index,
> >   			      1 << azx_dev->index);
> >   	/* set stripe control */
> > -	if (azx_dev->substream)
> > -		stripe_ctl = snd_hdac_get_stream_stripe_ctl(bus,
> > azx_dev->substream);
> > -	else
> > -		stripe_ctl = 0;
> > -	snd_hdac_stream_updateb(azx_dev, SD_CTL_3B, SD_CTL_STRIPE_MASK,
> > -				stripe_ctl);
> > +	if (azx_dev->stripe) {
> > +		if (azx_dev->substream)
> > +			stripe_ctl =
> > snd_hdac_get_stream_stripe_ctl(bus, azx_dev->substream);
> > +		else
> > +			stripe_ctl = 0;
> > +		snd_hdac_stream_updateb(azx_dev, SD_CTL_3B,
> > SD_CTL_STRIPE_MASK,
> > +					stripe_ctl);
> > +	}
> >   	/* set DMA start and interrupt mask */
> >   	snd_hdac_stream_updateb(azx_dev, SD_CTL,
> >   				0, SD_CTL_DMA_START | SD_INT_MASK);
> > @@ -118,7 +120,10 @@ void snd_hdac_stream_clear(struct hdac_stream
> > *azx_dev)
> >   	snd_hdac_stream_updateb(azx_dev, SD_CTL,
> >   				SD_CTL_DMA_START | SD_INT_MASK, 0);
> >   	snd_hdac_stream_writeb(azx_dev, SD_STS, SD_INT_MASK); /* to be
> > sure */
> > -	snd_hdac_stream_updateb(azx_dev, SD_CTL_3B, SD_CTL_STRIPE_MASK,
> > 0);
> > +	if (azx_dev->stripe) {
> > +		snd_hdac_stream_updateb(azx_dev, SD_CTL_3B,
> > SD_CTL_STRIPE_MASK, 0);
> > +		azx_dev->stripe = 0;
> > +	}
> >   	azx_dev->running = false;
> >   }
> >   EXPORT_SYMBOL_GPL(snd_hdac_stream_clear);
> > 
> > 
> > 
> 
> I think this is fixed by 6fd739c04ffd ("ALSA: hda: Fix regression by
> strip mask fix")
> This is already tagged for stable but it would be nice to pick it up
> sooner.
> 
> Thanks,
> Laura
> 




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux