Commit 3b03cc5b authored by Joris van Rantwijk's avatar Joris van Rantwijk Committed by Takashi Iwai

ALSA: usb-audio - Workaround for misdetected sample rate with CM6207

The CM6207 incorrectly advertises its 96 kHz playback setting as 48 kHz
in its USB device descriptor. This patch extends an existing workaround
in usbaudio.c to also cover the CM6207.

This resolves issue 0004249 in the ALSA bug tracker.
Signed-off-by: default avatarJoris van Rantwijk <jorispubl@xs4all.nl>
Cc: <stable@kernel.org>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 0412558c
...@@ -2539,7 +2539,8 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform ...@@ -2539,7 +2539,8 @@ static int parse_audio_format_rates(struct snd_usb_audio *chip, struct audioform
continue; continue;
/* C-Media CM6501 mislabels its 96 kHz altsetting */ /* C-Media CM6501 mislabels its 96 kHz altsetting */
if (rate == 48000 && nr_rates == 1 && if (rate == 48000 && nr_rates == 1 &&
chip->usb_id == USB_ID(0x0d8c, 0x0201) && (chip->usb_id == USB_ID(0x0d8c, 0x0201) ||
chip->usb_id == USB_ID(0x0d8c, 0x0102)) &&
fp->altsetting == 5 && fp->maxpacksize == 392) fp->altsetting == 5 && fp->maxpacksize == 392)
rate = 96000; rate = 96000;
fp->rate_table[fp->nr_rates] = rate; fp->rate_table[fp->nr_rates] = rate;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment