On Thu, 2007-02-22 at 10:24 -0500, Alan Stern wrote: > On Wed, 21 Feb 2007, Max Asbock wrote: > > > I am looking at a UHCI usb device which has endpoints of type interrupt. > > A userspace daemon attempts to submit an urb of type bulk to the device. > > This fails and -EINVAl is returned. > > Is it legal to send a bulk request to an interrupt endpoint? > > proc_do_submiturb doesn't complain about this case. > > You have found a bug in proc_do_submiturb(). It should indeed be legal to > submit a bulk request to an interrupt endpoint. > > > The EINVAL comes from uhci_submit_interrupt because urb->interval is not > > initialized for a bulk request on an interrupt endpoint. > > > > I don't really know anything about USB, so I hope this makes some sense. > > The device and userspace daemon worked with earlier kernels. Maybe just > > by accident? > > It used to be that uhci-hcd did not check for illegal intervals in > interrupt URBs. Now it does; that's why the behavior has changed. > > I believe the patch below will fix your problem. Please let us know if it > works. >
Your patch does indeed fix the problem. I applied it against 2.6.21-rc1 and was able to send bulk requests to the interrupt endpoint. thanks, Max ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel