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

Reply via email to