svn commit: r340353 - stable/9/sys/dev/sound/usb
Hans Petter Selasky
hselasky at FreeBSD.org
Sun Nov 11 12:35:31 UTC 2018
Author: hselasky
Date: Sun Nov 11 12:35:30 2018
New Revision: 340353
URL: https://svnweb.freebsd.org/changeset/base/340353
Log:
MFC r340248:
Don't read the USB audio sync endpoint when we don't use it to save
isochronous bandwidth.
Sponsored by: Mellanox Technologies
Modified:
stable/9/sys/dev/sound/usb/uaudio.c
Directory Properties:
stable/9/sys/ (props changed)
Modified: stable/9/sys/dev/sound/usb/uaudio.c
==============================================================================
--- stable/9/sys/dev/sound/usb/uaudio.c Sun Nov 11 12:34:19 2018 (r340352)
+++ stable/9/sys/dev/sound/usb/uaudio.c Sun Nov 11 12:35:30 2018 (r340353)
@@ -97,7 +97,7 @@ static int uaudio_default_bits = 32;
static int uaudio_default_channels = 0; /* use default */
#ifdef USB_DEBUG
-static int uaudio_debug = 0;
+static int uaudio_debug;
static SYSCTL_NODE(_hw_usb, OID_AUTO, uaudio, CTLFLAG_RW, 0, "USB uaudio");
@@ -115,6 +115,8 @@ SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, default_bits, CTL
TUNABLE_INT("hw.usb.uaudio.default_channels", &uaudio_default_channels);
SYSCTL_INT(_hw_usb_uaudio, OID_AUTO, default_channels, CTLFLAG_RW,
&uaudio_default_channels, 0, "uaudio default sample channels");
+#else
+#define uaudio_debug 0
#endif
#define UAUDIO_IRQS (8000 / UAUDIO_NFRAMES) /* interrupts per second */
@@ -2128,6 +2130,14 @@ uaudio_chan_play_sync_callback(struct usb_xfer *xfer,
break;
case USB_ST_SETUP:
+ /*
+ * Check if the recording stream can be used as a
+ * source of jitter information to save some
+ * isochronous bandwidth:
+ */
+ if (ch->priv_sc->sc_rec_chan.num_alt != 0 &&
+ uaudio_debug == 0)
+ break;
usbd_xfer_set_frames(xfer, 1);
usbd_xfer_set_frame_len(xfer, 0, usbd_xfer_max_framelen(xfer));
usbd_transfer_submit(xfer);
More information about the svn-src-all
mailing list