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

From: Takashi Iwai
Date: Tue Nov 10 2020 - 03:24:25 EST


On Tue, 10 Nov 2020 09:17:46 +0100,
Macpaul Lin wrote:
>
> On Tue, 2020-11-10 at 09:12 +0100, Takashi Iwai wrote:
> > On Tue, 10 Nov 2020 09:04:03 +0100,
> > 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@xxxxxxxxxxxx>
> > > Signed-off-by: Eddie Hung <eddie.hung@xxxxxxxxxxxx>
> > > ---
> > > sound/usb/format.c | 5 +++++
> > > 1 file changed, 5 insertions(+)
> > >
> > > diff --git a/sound/usb/format.c b/sound/usb/format.c
> > > index 1b28d01..6f6e79b 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(udev->descriptor.bcdDevice) == 0x49)
> >
> > This causes the compile error due to the unknown udev.
> > Is this bcdDevice check mandatory?
>
> This means firmware version of the headset as far as I know..

OK, then it's useful.

> Sorry I'll check the compile error and resend later.

I guess the only needed change is to replace udev with chip->dev.


thanks,

Takashi

>
> >
> > thanks,
> >
> > Takashi
>
> Thanks
> Macpaul Lin
>