Commit Graph

9 Commits

Author SHA1 Message Date
ttsou fca986b8ae Moved to single generated fusb.h, headers now generated out of lib directory 2009-09-16 17:08:53 -04:00
ttsou 0b0f523d25 Removed preprocessor declrs out of fusb.h and created separate fusb_libusb1_base.h 2009-09-16 17:08:52 -04:00
ttsou 3155d4132e Fixed libusb1 configure bug, libusb1 updates for previous usrp_prims integration 2009-09-16 17:08:52 -04:00
ttsou 58d67dd106 Commonized more usrp_prims code and renamed libusb-0.12 files to libusb0 2009-09-16 17:08:52 -04:00
ttsou 14d375c3c5 Additional comments for reaping transactions 2009-09-15 18:06:27 -04:00
ttsou 5003916f60 Additional comments for reaping transactions 2009-09-15 18:06:27 -04:00
ttsou 84b362c86d non-blocking reap and fusb default buffer size change 2009-09-15 18:06:27 -04:00
ttsou 2099b73475 Fix for simultaneous tx-rx using libusb_contexts 2009-09-15 18:06:27 -04:00
Johnathan Corgan b9d1da74eb Applied libusb-1.0 patch set from Thomas Tsou <ttsou@vt.edu>:
This patch set updates the usrp to support libusb-1.0. Asynchronous I/O
through libusb is added with fusb_libusb1.*, which is heavily based on
fusb_linux.*. In short, URB's and ioctl calls are replaced with
libusb_transfer structs and native calls. Transfer reaping is handled by
libusb and associated callbacks. I get 32Mb/s on all of my machines using
test_usrp_standard_rx or tx. Due to the API rewrite in 1.0 from 0.12, there
are alot of changes, many are simply name changes.

Known Issues:

Transmit and receive both work, but not at same time
(e.g. usrp_benchmark_usb.py). libusb does not create any internal threads,
so for a single session fusb_libusb1 works in the same manner as
fusb_linux with the callback called at controlled times. With multiple
libusb sessions the callback may occur at any time and threading issues
come into play causing behavior to become undefined. The use of separate
libusb_contexts _might_ solve this issue; I have not had the time to look
into it.
2009-09-15 18:06:27 -04:00