ALSA: usb-audio: Disable sample read check if firmware doesn't give back
Some buggy firmware don't give the current sample rate but leaves zero. Handle this case more gracefully without warning but just skip the current rate verification from the next time. Cc: <stable@vger.kernel.org> Link: https://lore.kernel.org/r/20201218145858.2357-1-tiwai@suse.de Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
f2283366c2
commit
9df28edce7
|
@ -534,6 +534,12 @@ static int set_sample_rate_v1(struct snd_usb_audio *chip,
|
|||
}
|
||||
|
||||
crate = data[0] | (data[1] << 8) | (data[2] << 16);
|
||||
if (!crate) {
|
||||
dev_info(&dev->dev, "failed to read current rate; disabling the check\n");
|
||||
chip->sample_rate_read_error = 3; /* three strikes, see above */
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (crate != rate) {
|
||||
dev_warn(&dev->dev, "current rate %d is different from the runtime rate %d\n", crate, rate);
|
||||
// runtime->rate = crate;
|
||||
|
|
Loading…
Reference in New Issue