PERFORCE change 179620 for review

Hans Petter Selasky hselasky at FreeBSD.org
Mon Jun 14 20:27:03 UTC 2010


http://p4web.freebsd.org/@@179620?ac=10

Change 179620 by hselasky at hselasky_laptop001 on 2010/06/14 20:26:38

	USB MIDI:
		- Reduce MIDI input buffer size to one
		USB packet, hence some USB devices
		don't properly short terminate their
		transfers. This fixes a problem where
		input appears several seconds late.
	
		- Reported by: Alexander Yerenkow
		- Fix by: hselasky @

Affected files ...

.. //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#71 edit

Differences ...

==== //depot/projects/usb/src/sys/dev/sound/usb/uaudio.c#71 (text+ko) ====

@@ -507,8 +507,8 @@
 		.type = UE_BULK,
 		.endpoint = UE_ADDR_ANY,
 		.direction = UE_DIR_IN,
-		.bufsize = UMIDI_BULK_SIZE,
-		.flags = {.pipe_bof = 1,.short_xfer_ok = 1,},
+		.bufsize = 4,	/* bytes */
+		.flags = {.pipe_bof = 1,.short_xfer_ok = 1,.proxy_buffer = 1,},
 		.callback = &umidi_bulk_read_callback,
 	},
 
@@ -3316,10 +3316,6 @@
 
 		DPRINTF("actlen=%d bytes\n", actlen);
 
-		if (actlen == 0) {
-			/* should not happen */
-			goto tr_error;
-		}
 		pos = 0;
 		pc = usbd_xfer_get_frame(xfer, 0);
 
@@ -3354,8 +3350,6 @@
 		return;
 
 	default:
-tr_error:
-
 		DPRINTF("error=%s\n", usbd_errstr(error));
 
 		if (error != USB_ERR_CANCELLED) {


More information about the p4-projects mailing list