PERFORCE change 162907 for review
Sylvestre Gallon
syl at FreeBSD.org
Wed May 27 20:33:01 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=162907
Change 162907 by syl at syl_rincewind on 2009/05/27 20:32:25
Fix bugs spotted by Hans Petter Selasky.
Use libusb20_tr_set_total_frames.
Best use of libusb20_tr_setup_isoc.
Affected files ...
.. //depot/projects/soc2009/syl_usb/src/lib/libusb/libusb10.c#14 edit
Differences ...
==== //depot/projects/soc2009/syl_usb/src/lib/libusb/libusb10.c#14 (text+ko) ====
@@ -713,6 +713,7 @@
struct timeval *cur_tv;
int num_frame;
int ret;
+ int i;
if (xfer == NULL)
return (LIBUSB_ERROR_NO_MEM);
@@ -780,8 +781,10 @@
libusb20_tr_setup_bulk(usb20_xfer, xfer->buffer, xfer->length, xfer->timeout);
break ;
case LIBUSB_TRANSFER_TYPE_ISOCHRONOUS:
- /* what means frindex ? */
- libusb20_tr_setup_isoc(usb20_xfer, xfer->buffer, xfer->length, 0);
+ libusb20_tr_set_total_frames(usb20_xfer, xfer->num_iso_packets);
+ /* XXX need to check libusb-1.0 for xfer->buffer xfer->length */
+ for (i = 0 ; i < xfer->num_iso_packets ; i++)
+ libusb20_tr_setup_isoc(usb20_xfer, xfer->buffer, xfer->length, i);
break ;
case LIBUSB_TRANSFER_TYPE_CONTROL:
libusb20_tr_setup_control(usb20_xfer, xfer->buffer,
@@ -790,9 +793,6 @@
break ;
}
- libusb20_tr_set_timeout(usb20_xfer, xfer->timeout);
- libusb20_tr_set_buffer(usb20_xfer, xfer->buffer, xfer->num_iso_packets);
- libusb20_tr_set_length(usb20_xfer, xfer->length, xfer->num_iso_packets);
libusb20_tr_set_priv_sc0(usb20_xfer, xfer->callback);
libusb20_tr_set_priv_sc1(usb20_xfer, xfer->user_data);
libusb20_tr_set_callback(usb20_xfer, libusb10_proxy);
More information about the p4-projects
mailing list