[alsa-devel] Dell USB audio driver workaround

Kailang kailang at realtek.com
Wed Apr 6 11:22:43 CEST 2016


 

> -----Original Message-----
> From: Takashi Iwai [mailto:tiwai at suse.de] 
> Sent: Wednesday, April 06, 2016 4:57 PM
> To: Kailang
> Cc: (alsa-devel at alsa-project.org)
> Subject: Re: Dell USB audio driver workaround
> 
> On Wed, 06 Apr 2016 08:29:12 +0200,
> Kailang wrote:
> > 
> > Hi Takashi,
> > 
> > Dell had USB dock.
> > Maybe firmware issue, the master volume always keep at 0x57.
> > Attach patch will fix it to keep at Max volume.
> > 
> > Could you help us to update it?
> 
> Well, I don't get how this patch works..
> 
> > diff --git a/sound/usb/mixer.c b/sound/usb/mixer.c index 
> > 4f85757..84d9a4e 100644
> > --- a/sound/usb/mixer.c
> > +++ b/sound/usb/mixer.c
> > @@ -846,6 +846,12 @@ static void volume_control_quirks(struct 
> > usb_mixer_elem_info *cval,  {
> >  	struct snd_usb_audio *chip = cval->head.mixer->chip;
> >  	switch (chip->usb_id) {
> > +	case USB_ID(0x0bda, 0x4014): /* Dell workaround */
> > +		if (strstr(kctl->id.name, "Playback Volume") != NULL) {
> > +			cval->min = 0x0000;
> > +			cval->max = 0x0000;
> > +		}
> > +		break;
> 
> So, this means that this value has to be fixed to 0?
> If yes, can't we simply remove this volume instead?

Yes, but it need to set Max volume to 0. This is test on my site.
Because it will rewrite 0x57 value to codec register when driver is loaded.
And keep 0x57 volume value all the time. So, Master volume will lower than windows machine.
This case which driver fail to build the alsa mixer(This is firmware cause it). So, no hardware volume control on this.
If the Max volume value is 0,  system will not set default value 0x57 for first time loading driver.

> 
> 
> thanks,
> 
> Takashi
> 
> ------Please consider the environment before printing this e-mail.
> 


More information about the Alsa-devel mailing list