Loading sound/usb/quirks.c +11 −0 Original line number Diff line number Diff line Loading @@ -861,6 +861,17 @@ void snd_usb_endpoint_start_quirk(struct snd_usb_endpoint *ep) if ((le16_to_cpu(ep->chip->dev->descriptor.idVendor) == 0x23ba) && ep->type == SND_USB_ENDPOINT_TYPE_SYNC) ep->skip_packets = 4; /* * M-Audio Fast Track C400 - when packets are not skipped, real world * latency varies by approx. +/- 50 frames (at 96KHz) each time the * stream is (re)started. When skipping packets 16 at endpoint start * up, the real world latency is stable within +/- 1 frame (also * across power cycles). */ if (ep->chip->usb_id == USB_ID(0x0763, 0x2030) && ep->type == SND_USB_ENDPOINT_TYPE_DATA) ep->skip_packets = 16; } void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe, Loading Loading
sound/usb/quirks.c +11 −0 Original line number Diff line number Diff line Loading @@ -861,6 +861,17 @@ void snd_usb_endpoint_start_quirk(struct snd_usb_endpoint *ep) if ((le16_to_cpu(ep->chip->dev->descriptor.idVendor) == 0x23ba) && ep->type == SND_USB_ENDPOINT_TYPE_SYNC) ep->skip_packets = 4; /* * M-Audio Fast Track C400 - when packets are not skipped, real world * latency varies by approx. +/- 50 frames (at 96KHz) each time the * stream is (re)started. When skipping packets 16 at endpoint start * up, the real world latency is stable within +/- 1 frame (also * across power cycles). */ if (ep->chip->usb_id == USB_ID(0x0763, 0x2030) && ep->type == SND_USB_ENDPOINT_TYPE_DATA) ep->skip_packets = 16; } void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe, Loading