ALSA: usb: fine-tune Tenor error compensation value
Users of devices affected by the Tenor feedback data error report buffer underruns, even with the +/- 0x1.0000 quirk applied. Compensating the error with 0xf000 instead seems to reliably fix that issue. See https://sourceforge.net/p/alsa/mailman/message/35230259/ Reported-and-tested-by: Norman Nolte <norman.nolte@gmx.net> Reported-and-tested-by: Thomas Gresens <T.Gresens@intershop.de> Signed-off-by: Daniel Mack <daniel@zonque.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Родитель
ca0dd2736a
Коммит
36e1ac3cf8
|
@ -1174,9 +1174,9 @@ void snd_usb_handle_sync_urb(struct snd_usb_endpoint *ep,
|
|||
* by +/- 0x1.0000.
|
||||
*/
|
||||
if (f < ep->freqn - 0x8000)
|
||||
f += 0x10000;
|
||||
f += 0xf000;
|
||||
else if (f > ep->freqn + 0x8000)
|
||||
f -= 0x10000;
|
||||
f -= 0xf000;
|
||||
} else if (unlikely(ep->freqshift == INT_MIN)) {
|
||||
/*
|
||||
* The first time we see a feedback value, determine its format
|
||||
|
|
Загрузка…
Ссылка в новой задаче