[PATCH v3] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET

Takashi Iwai tiwai at suse.de
Wed Nov 18 02:34:25 EST 2020


On Wed, 18 Nov 2020 06:26:06 +0100,
Macpaul Lin wrote:
> 
> On Tue, 2020-11-10 at 17:04 +0800, Macpaul Lin wrote:
> > The HUAWEI USB-C headset (VID:0x12d1, PID:0x3a07) reported it supports
> > 96khz. However there will be some random issue under 96khz.
> > Not sure if there is any alternate setting could be applied.
> > Hence 48khz is suggested to be applied at this moment.
> > 
> > Signed-off-by: Macpaul Lin <macpaul.lin at mediatek.com>
> > Signed-off-by: Eddie Hung <eddie.hung at mediatek.com>
> > Cc: stable at vger.kernel.org
> > ---
> > Changes for v2:
> >   - Fix build error.
> >   - Add Cc: stable at vger.kernel.org
> > Changes for v3:
> >   - Replace "udev" with "chip->dev" according to Takashi's suggestion. Thanks.
> > 
> >  sound/usb/format.c |    5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/sound/usb/format.c b/sound/usb/format.c
> > index 1b28d01..0aff774 100644
> > --- a/sound/usb/format.c
> > +++ b/sound/usb/format.c
> > @@ -217,6 +217,11 @@ static int parse_audio_format_rates_v1(struct snd_usb_audio *chip, struct audiof
> >  			    (chip->usb_id == USB_ID(0x041e, 0x4064) ||
> >  			     chip->usb_id == USB_ID(0x041e, 0x4068)))
> >  				rate = 8000;
> > +			/* Huawei headset can't support 96kHz fully */
> > +			if (rate == 96000 &&
> > +			    chip->usb_id == USB_ID(0x12d1, 0x3a07) &&
> > +			    le16_to_cpu(chip->dev->descriptor.bcdDevice) == 0x49)
> > +				continue;
> >  
> >  			fp->rate_table[fp->nr_rates] = rate;
> >  			if (!fp->rate_min || rate < fp->rate_min)
> 
> Sorry for bothering again, please hold-on this patch.
> I'm still trying to clarify if there is another approach for this
> interoperability issue.
> I'll update this thread once the result has came out.

OK, thanks for information.


Takashi



More information about the linux-arm-kernel mailing list