On Thu, 2004-10-28 at 13:25 -0700, Eric Blossom wrote: > > I have to write a custom driver for a FX2 based camera module that > > should be able to reach a bulk throughput of about 30 MBytes/sec from > > the device to user space memory. The available CPU performance is less > > than a 1GHz VIA EDEN. Is the libusb capable to provide this performance? > > Yes. With a bit of help. The biggest issue is generally usb host > controllers. > > We built an FX2 based software radio peripheral and we routinely > sustain 32MB/sec in either direction. CPU consumption is minimal -- > on the order of 5% of a 1.4 GHz Pentium M. We did it all in user > space using libusb, with an added layer on top that does "fast usb" by > keeping multiple URBs in flight using usbdevice_fs. > > You can find all the code including the firmware and the fast usb > library (fusb*.{h,cc}) at ftp://ftp.gnu.org/pub/gnu/gnuradio/usrp-0.5.tar.gz > > More info on the device at > http://comsec.com/wiki?UniversalSoftwareRadioPeripheral
I have tried to reproduce your bandwidth results by patching the fx2_programmer (http://volodya-project.sourceforge.net/fx2_programmer.php) to use your fast_usb code in it's bench_bulk function to get the data. To produce some data in the FX2, I used the included ex3 program. I connected the FX2 to a NEC based USB2 PCI extension card: 0000:00:0c.2 USB Controller: NEC Corporation USB 2.0 (rev 04) (prog-if 20 [EHCI]) Subsystem: Unknown device 0ee4:3383 The original fx2_programmer reached about 15 MB/sec with plain libusb usb_read_bulk calls. The patched version (using fusb) got up to about 23 MB/sec - but no more... :-/ You mentioned the host-controllers are generally the biggest issue regarding throughput. Do have any experience with this NEC chip? Do you know another reason why I can't reproduce your 32 MB/sec? Maybe the ex3.c is the bottleneck - do you have a simple FX2 firmware that works on any FX2 based device which just produces random data _fast_? Thanks, Axel ------------------------------------------------------- This SF.Net email is sponsored by: Sybase ASE Linux Express Edition - download now for FREE LinuxWorld Reader's Choice Award Winner for best database on Linux. http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel