summaryrefslogtreecommitdiff
path: root/usrp/host/lib/fusb_libusb1.cc
AgeCommit message (Collapse)Author
2009-11-02usrp: Check return value in fusb_libusb1 _reap()Thomas Tsou
The old fusb_libusb1 _reap() call always returned true except on error. With this commit it checks that a transfer is actually reaped and returns false otherwise.
2009-10-01Cleanup in preparation for mergeJohnathan Corgan
Fix trailing whitespace Use standard include guards Add more missing config.h includes Fixup emacs mode strings Update copyright notices
2009-09-16Moved to single generated fusb.h, headers now generated out of lib directoryttsou
2009-09-16Removed preprocessor declrs out of fusb.h and created separate ↵ttsou
fusb_libusb1_base.h
2009-09-16Fixed libusb1 configure bug, libusb1 updates for previous usrp_prims integrationttsou
2009-09-16Commonized more usrp_prims code and renamed libusb-0.12 files to libusb0ttsou
2009-09-15Additional comments for reaping transactionsttsou
2009-09-15Additional comments for reaping transactionsttsou
2009-09-15non-blocking reap and fusb default buffer size changettsou
2009-09-15Fix for simultaneous tx-rx using libusb_contextsttsou
2009-09-15Applied libusb-1.0 patch set from Thomas Tsou <ttsou@vt.edu>:Johnathan Corgan
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.