Here is a patch that adds code from 2.6.* to pass the interval is ISO urbs. There is a check in hcd.c that requires this value to be non-zero.
-- Don Reid --- devio.c.orig Fri Feb 13 11:23:47 2004 +++ devio.c Wed Feb 18 12:08:58 2004 @@ -784,7 +784,7 @@ struct async *as; struct usb_ctrlrequest *dr = NULL; unsigned int u, totlen, isofrmlen; - int ret; + int ret, interval = 0; int intf = -1; if (copy_from_user(&uurb, arg, sizeof(uurb))) @@ -846,6 +846,10 @@ break; case USBDEVFS_URB_TYPE_ISO: + if (!(ep_desc = usb_epnum_to_ep_desc(ps->dev, uurb.endpoint))) + return -ENOENT; + interval = (1 << (ep_desc->bInterval - 1)); + /* arbitrary limit */ if (uurb.number_of_packets < 1 || uurb.number_of_packets > 128) return -EINVAL; @@ -904,6 +908,7 @@ as->urb.setup_packet = (unsigned char*)dr; as->urb.start_frame = uurb.start_frame; as->urb.number_of_packets = uurb.number_of_packets; + as->urb.interval = interval; as->urb.context = as; as->urb.complete = async_completed; for (totlen = u = 0; u < uurb.number_of_packets; u++) { ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel