On Thu, Feb 01, 2007 at 11:19:43AM -0500, Alan Stern wrote: > > My device has an interrupt endpoint that > > delivers 122 bytes every 10 ms. I have written a simple program that > > uses libusb to read the data, and it produces two interrupts for each > > 122-byte packet (as observed by looking at /proc/interrupts). > > I don't know why there are two interrupts; there should only be one. > Still, an average of 200 interrupts per second isn't excessively high.
There is quite a bit of CPU work in analyzing that data in real-time
and displaying it, so we are trying to optimize all we can.
> > Looking at the code, it seems that the interrupt transfers are limited
> > to 1 packet? There is a comment to that effect at line 1470 in
> > drivers/usb/usb-uhci.c (function is uhci_submit_int_urb):
> >
> > // INT allows only one packet
> > if (urb->transfer_buffer_length > usb_maxpacket (urb->dev, pipe,
> > usb_pipeout (pipe)))
> > return -EINVAL;
> >
> > The same text is present in linux-2.4.34 as well.
> >
> > Code to the same effect is present also in uhci.c (function
> > uhci_submit_interrupt) but without the comment.
> >
> > I have tried to find the same check in the linux-2.6.20-rcX but could
> > not find it.
>
> Because it isn't there. That limitation has been removed in 2.6.
Good!
> > I have read the Intel 82801E manual (this is the chipset that I am
> > using) and the USB 2.0 spec (section 8.5.4 in particular, in contrast
> > to 8.5.2) but I did not find a hard reference to this limitation of a
> > single data packet per interrupt transfer. Do you have a hard
> > reference to this limitation and can you send me a link or a
> > document/section number?
>
> It isn't a hardware limitation; it's a software driver limitation. So you
> won't find it in any hardware manuals.
Does that mean that I can just remove the check and everything should
work? Do you know if there is anything that assumes the check
upstream and might break if removed? I will certainly try it on my
end and report my findings.
Thank you,
florin
--
Bruce Schneier expects the Spanish Inquisition.
http://geekz.co.uk/schneierfacts/fact/163
signature.asc
Description: Digital signature
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
