Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Dec 2007 17:13:18 GMT
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 130958 for review
Message-ID:  <200712151713.lBFHDIGk080402@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=130958

Change 130958 by hselasky@hselasky_laptop001 on 2007/12/15 17:12:47

	
	Make "usbd_std_root_transfer" like the other
	standard chain functions.

Affected files ...

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

Differences ...

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

@@ -1201,8 +1201,8 @@
 	/* signal that we plan to do the callback */
 	xfer->usb_thread = td;
 
-	if (xfer->flags_int.control_xfr &&
-	    xfer->flags_int.control_hdr) {
+	if (xfer->flags_int.control_xfr) {
+	  if (xfer->flags_int.control_hdr) {
 
 		/* copy out the USB request */
 
@@ -1228,6 +1228,10 @@
 		if (std->err) {
 			goto done;
 		}
+	  } else {
+	      /* skip the first frame in this case */
+	      xfer->aframes = 1;
+	  }
 	}
 	std->err = 0;
 	std->state = USBD_STD_ROOT_TR_PRE_DATA;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200712151713.lBFHDIGk080402>