linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
@ 2020-11-10  8:04 Macpaul Lin
  2020-11-10  8:12 ` Takashi Iwai
  2020-11-10  8:42 ` [PATCH v2] " Macpaul Lin
  0 siblings, 2 replies; 10+ messages in thread
From: Macpaul Lin @ 2020-11-10  8:04 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel
  Cc: Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, Macpaul Lin, linux-kernel, linux-arm-kernel,
	linux-usb, linux-mediatek

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@mediatek.com>
Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
---
 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)
+				continue;
 
 			fp->rate_table[fp->nr_rates] = rate;
 			if (!fp->rate_min || rate < fp->rate_min)
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:04 [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET Macpaul Lin
@ 2020-11-10  8:12 ` Takashi Iwai
  2020-11-10  8:17   ` Macpaul Lin
  2020-11-10  8:42 ` [PATCH v2] " Macpaul Lin
  1 sibling, 1 reply; 10+ messages in thread
From: Takashi Iwai @ 2020-11-10  8:12 UTC (permalink / raw)
  To: Macpaul Lin
  Cc: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, linux-kernel, linux-arm-kernel, linux-usb,
	linux-mediatek

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@mediatek.com>
> Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> ---
>  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?


thanks,

Takashi

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:12 ` Takashi Iwai
@ 2020-11-10  8:17   ` Macpaul Lin
  2020-11-10  8:24     ` Takashi Iwai
  2020-11-10  9:04     ` [PATCH v3] " Macpaul Lin
  0 siblings, 2 replies; 10+ messages in thread
From: Macpaul Lin @ 2020-11-10  8:17 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, linux-kernel, linux-arm-kernel, linux-usb,
	linux-mediatek

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@mediatek.com>
> > Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> > ---
> >  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..
Sorry I'll check the compile error and resend later.

> 
> thanks,
> 
> Takashi

Thanks
Macpaul Lin


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:17   ` Macpaul Lin
@ 2020-11-10  8:24     ` Takashi Iwai
  2020-11-10  9:04     ` [PATCH v3] " Macpaul Lin
  1 sibling, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2020-11-10  8:24 UTC (permalink / raw)
  To: Macpaul Lin
  Cc: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, linux-kernel, linux-arm-kernel, linux-usb,
	linux-mediatek

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@mediatek.com>
> > > Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> > > ---
> > >  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
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v2] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:04 [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET Macpaul Lin
  2020-11-10  8:12 ` Takashi Iwai
@ 2020-11-10  8:42 ` Macpaul Lin
  2020-11-10  8:50   ` Greg KH
  1 sibling, 1 reply; 10+ messages in thread
From: Macpaul Lin @ 2020-11-10  8:42 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel
  Cc: Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, Macpaul Lin, linux-kernel, linux-arm-kernel,
	linux-usb, linux-mediatek, stable

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@mediatek.com>
Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
Cc: stable@vger.kernel.org
---
Changes for v2:
  - Fix build error.
  - Add Cc: stable@vger.kernel.org

 sound/usb/format.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sound/usb/format.c b/sound/usb/format.c
index 1b28d01..7a4837b 100644
--- a/sound/usb/format.c
+++ b/sound/usb/format.c
@@ -202,6 +202,7 @@ static int parse_audio_format_rates_v1(struct snd_usb_audio *chip, struct audiof
 		fp->rate_min = fp->rate_max = 0;
 		for (r = 0, idx = offset + 1; r < nr_rates; r++, idx += 3) {
 			unsigned int rate = combine_triple(&fmt[idx]);
+			struct usb_device *udev = chip->dev;
 			if (!rate)
 				continue;
 			/* C-Media CM6501 mislabels its 96 kHz altsetting */
@@ -217,6 +218,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)
+				continue;
 
 			fp->rate_table[fp->nr_rates] = rate;
 			if (!fp->rate_min || rate < fp->rate_min)
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:42 ` [PATCH v2] " Macpaul Lin
@ 2020-11-10  8:50   ` Greg KH
  2020-11-10  8:54     ` Macpaul Lin
  0 siblings, 1 reply; 10+ messages in thread
From: Greg KH @ 2020-11-10  8:50 UTC (permalink / raw)
  To: Macpaul Lin
  Cc: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, linux-kernel, linux-arm-kernel, linux-usb,
	linux-mediatek, stable

On Tue, Nov 10, 2020 at 04:42:54PM +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@mediatek.com>
> Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> Cc: stable@vger.kernel.org
> ---
> Changes for v2:
>   - Fix build error.
>   - Add Cc: stable@vger.kernel.org
> 
>  sound/usb/format.c |    6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/sound/usb/format.c b/sound/usb/format.c
> index 1b28d01..7a4837b 100644
> --- a/sound/usb/format.c
> +++ b/sound/usb/format.c
> @@ -202,6 +202,7 @@ static int parse_audio_format_rates_v1(struct snd_usb_audio *chip, struct audiof
>  		fp->rate_min = fp->rate_max = 0;
>  		for (r = 0, idx = offset + 1; r < nr_rates; r++, idx += 3) {
>  			unsigned int rate = combine_triple(&fmt[idx]);
> +			struct usb_device *udev = chip->dev;
>  			if (!rate)
>  				continue;
>  			/* C-Media CM6501 mislabels its 96 kHz altsetting */

Did you run this patch through checkpatch.pl?


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v2] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:50   ` Greg KH
@ 2020-11-10  8:54     ` Macpaul Lin
  0 siblings, 0 replies; 10+ messages in thread
From: Macpaul Lin @ 2020-11-10  8:54 UTC (permalink / raw)
  To: Greg KH
  Cc: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, linux-kernel, linux-arm-kernel, linux-usb,
	linux-mediatek, stable

On Tue, 2020-11-10 at 09:50 +0100, Greg KH wrote:
> On Tue, Nov 10, 2020 at 04:42:54PM +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@mediatek.com>
> > Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> > Cc: stable@vger.kernel.org
> > ---
> > Changes for v2:
> >   - Fix build error.
> >   - Add Cc: stable@vger.kernel.org
> > 
> >  sound/usb/format.c |    6 ++++++
> >  1 file changed, 6 insertions(+)
> > 
> > diff --git a/sound/usb/format.c b/sound/usb/format.c
> > index 1b28d01..7a4837b 100644
> > --- a/sound/usb/format.c
> > +++ b/sound/usb/format.c
> > @@ -202,6 +202,7 @@ static int parse_audio_format_rates_v1(struct snd_usb_audio *chip, struct audiof
> >  		fp->rate_min = fp->rate_max = 0;
> >  		for (r = 0, idx = offset + 1; r < nr_rates; r++, idx += 3) {
> >  			unsigned int rate = combine_triple(&fmt[idx]);
> > +			struct usb_device *udev = chip->dev;
> >  			if (!rate)
> >  				continue;
> >  			/* C-Media CM6501 mislabels its 96 kHz altsetting */
> 
> Did you run this patch through checkpatch.pl?
> 

I've ran checkpatch for this patch v2, and it shown
"total: 0 errors, 0 warnings". We're using 5.9-rc1 internal.

However, I'll send patch v3 according to Takashi's suggestion.

Thanks
Macpaul Lin

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH v3] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  8:17   ` Macpaul Lin
  2020-11-10  8:24     ` Takashi Iwai
@ 2020-11-10  9:04     ` Macpaul Lin
  2020-11-18  5:26       ` Macpaul Lin
  1 sibling, 1 reply; 10+ messages in thread
From: Macpaul Lin @ 2020-11-10  9:04 UTC (permalink / raw)
  To: Jaroslav Kysela, Takashi Iwai, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel
  Cc: Ainge Hsu, Eddie Hung, Chunfeng Yun, Mediatek WSD Upstream,
	Macpaul Lin, Macpaul Lin, linux-kernel, linux-arm-kernel,
	linux-usb, linux-mediatek, stable

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@mediatek.com>
Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
Cc: stable@vger.kernel.org
---
Changes for v2:
  - Fix build error.
  - Add Cc: stable@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)
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH v3] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-10  9:04     ` [PATCH v3] " Macpaul Lin
@ 2020-11-18  5:26       ` Macpaul Lin
  2020-11-18  7:34         ` Takashi Iwai
  0 siblings, 1 reply; 10+ messages in thread
From: Macpaul Lin @ 2020-11-18  5:26 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Jaroslav Kysela, Matthias Brugger, Alexander Tsoy, Nicola Lunghi,
	Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu (徐巧宜),
	Eddie Hung (洪正鑫),
	Chunfeng Yun (云春峰),
	wsd_upstream, Macpaul Lin, linux-kernel, linux-arm-kernel,
	linux-usb, linux-mediatek, stable

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@mediatek.com>
> Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> Cc: stable@vger.kernel.org
> ---
> Changes for v2:
>   - Fix build error.
>   - Add Cc: stable@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.

Thanks
Macpaul Lin

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH v3] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET
  2020-11-18  5:26       ` Macpaul Lin
@ 2020-11-18  7:34         ` Takashi Iwai
  0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2020-11-18  7:34 UTC (permalink / raw)
  To: Macpaul Lin
  Cc: Takashi Iwai, Jaroslav Kysela, Matthias Brugger, Alexander Tsoy,
	Nicola Lunghi, Christopher Swenson, Nick Kossifidis, alsa-devel,
	Ainge Hsu, Eddie Hung, Chunfeng Yun, wsd_upstream, Macpaul Lin,
	linux-kernel, linux-arm-kernel, linux-usb, linux-mediatek,
	stable

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@mediatek.com>
> > Signed-off-by: Eddie Hung <eddie.hung@mediatek.com>
> > Cc: stable@vger.kernel.org
> > ---
> > Changes for v2:
> >   - Fix build error.
> >   - Add Cc: stable@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

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-11-18  7:34 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-10  8:04 [PATCH] ALSA: usb-audio: disable 96khz support for HUAWEI USB-C HEADSET Macpaul Lin
2020-11-10  8:12 ` Takashi Iwai
2020-11-10  8:17   ` Macpaul Lin
2020-11-10  8:24     ` Takashi Iwai
2020-11-10  9:04     ` [PATCH v3] " Macpaul Lin
2020-11-18  5:26       ` Macpaul Lin
2020-11-18  7:34         ` Takashi Iwai
2020-11-10  8:42 ` [PATCH v2] " Macpaul Lin
2020-11-10  8:50   ` Greg KH
2020-11-10  8:54     ` Macpaul Lin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).