On Wed, 1 Oct 2003, Richard Stover wrote: > I'm writing a USB driver for a custom interface we are > developing for an astronomical camera. We are using the > Cypress FX2 USB chip. Most aspects of the system are working > fine but so far the throughput is not as high as required > to support the data rate. I have noted two limitations on > INTERRUPT endpoints. First, the maximum packet size seems > to be 1023 bytes instead of 1024 bytes. This is a minor > problem, but it does seem to violate the USB 2.0 specs. > I get a urb status in my callback of -75 when I try 1024 bytes. > > The second, more serious problem is that I can do only > 1 IN transaction per frame instead of 1 IN transaction > per microframe, per endpoint. This reduces the maximum bandwidth > by a factor of 8. When I try to use an interval less than > 4 (8 microframes) I get error -12 (ENOMEM) when trying to submit > the urb.
Have you considered using bulk transfers rather than interrupt? If you're not sharing the bus with any other devices then latency won't be a issue, and bulk isn't subject to the same bandwidth limitations as interrupt. Alan Stern ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
