Michael Dickens
c286032a2a
usb: tweak types for consistency between LIBUSB API calls and internal UHD usage of returned values.
2016-08-01 18:49:53 -07:00
Michael Dickens
a5909ec14b
usb: add virtual destructors where needed; make virtual destructors out-of-line from class definition to reduce number of vtables emitted (according to clang).
2016-08-01 18:49:53 -07:00
Michael Dickens
3a2d11e53a
usb: fix interfaces to be type 'int' and endpoints to be type 'unsigned char' to match the libusb API.
2016-08-01 18:49:53 -07:00
DaulPavid
35c6d74297
Corrected the UHD behavior in the event of a USB disconnect
2016-02-12 13:32:38 -08:00
Nicholas Corgan
bc9dd05988
C API cleanup, feature additions
...
* Cleaned up usage of handles vs. handle pointers
* Store global string for last error thrown
* Removed uhd::device_addr_t handle, added std::vector<std::string> handle
2015-08-12 12:19:20 -07:00
michael-west
95108f6f6e
UHD: Change libusb_error_name() to libusb_strerror() to improve error output
2015-08-12 12:02:59 -07:00
Michael Dickens
bb700f8125
b200: fix libusb exceptions to work with that expected by b200 impl exception handling which uses uhd::usb_error (not uhd::runtime_error).
2015-08-11 14:31:25 -07:00
michael-west
0f2346554d
UHD: libusb_strerror compatibility with older versions of libusb
2015-08-06 18:07:24 -07:00
Ashish Chaudhari
f4e7debd1f
libusb: Fixed Windows build issue
...
- Introduced in b08352f267 . ERROR is a
macro included through some windows specific header. Replaced with
STATUS_ERROR.
2015-08-06 15:16:54 -05:00
michael-west
b08352f267
Fix for BUG 869: UHD: Unhandled exceptions during destruction of multi_usrp object cause application to terminate
...
- Prevented libusb_zero_copy_single from submitting transfers after libusb reports an error
- Made error messages in libusb_zero_copy and udp_zero_copy more descriptive
2015-08-05 13:07:16 -07:00
Balint Seeber
4ed2b26d51
b200: Change init sequence to catch bad USB states
...
- Fixes USB hang issues on OS X
- Uses usb_errors
2015-08-03 10:11:44 -07:00
Nicholas Corgan
1200721b69
Warning fixes
...
* CMake now not applying C++ flags to C files
* GCC 4.4: anti-aliasing rules
* MSVC: narrowing, differences in subclass function parameters
* Clang: uninitialized variables
2015-03-27 09:35:29 -07:00
Ben Hilburn
178ac3f1c9
Merging USRP X300 and X310 support!!
2014-02-04 11:04:07 -08:00
Michael West
39d69b3a88
BUG #183 : Addressed comments from code review.
2013-11-19 11:16:44 -08:00
Moritz Fischer
7961fc2388
BUG #183 : Fixed typo
...
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
2013-11-11 10:52:50 +01:00
Michael West
597e7965a7
BUG #183 : B200 High CPU Usage: Created a single thread to handle libusb events and expanded packet size to 16k
2013-11-08 15:30:03 -08:00
Josh Blum
6553047fca
usb: squashed thread related changes
2013-07-19 12:38:08 -07:00
Josh Blum
f6dd15477d
usb: useful error messages on failed submit
2013-07-16 12:30:04 -07:00
Josh Blum
d39020b236
usb: check for and use libusb_handle_events_timeout_completed
2013-03-11 11:30:37 -07:00
Josh Blum
83063ea8b1
usb: use int for completed to match libusb example code
2013-03-11 10:40:39 -07:00
Josh Blum
d18fc6f0f1
usb: added recv buffer flushing to libusb zero copy
2012-08-04 14:22:09 -04:00
Josh Blum
253be8f0da
uhd: squashed transport work
2012-04-23 13:45:23 -07:00
Josh Blum
b7ff81c9a8
dsp rework: work on usb wrapper for smaller packets, large luts
2012-02-02 15:15:54 -08:00
Josh Blum
c35462adaf
usb: added interface args to usb abstractions
2011-09-19 16:14:12 -07:00
Josh Blum
833da5c1ee
usb: reimplement ~libusb_zero_copy_impl to avoid segfaults and indefinite timeouts
2011-09-02 14:08:01 -07:00
Josh Blum
acf92e8356
usb: removed handler thread, do work in get buffer calls
2011-09-02 11:54:57 -07:00
Josh Blum
7e1b2a0e3c
uhd: added tasks to simplify thread spawning use cases
2011-07-13 17:25:40 -07:00
Josh Blum
927e795da3
uhd: replaced boolean for thread loop w/ boost::this_thread::interruption_requested
2011-06-16 11:50:05 -07:00
Josh Blum
5dfc458188
b100: added b100 host (squashed)
2011-06-14 17:56:54 -07:00
Josh Blum
ea5ce50a46
uhd: replace managed buffer shared pointer w/ intrusive pointer to reduce overhead
2011-05-14 20:28:20 -07:00
Josh Blum
c8dca30d72
uhd: replaced many conditional prints with UHD_LOG usage
2011-05-04 15:27:11 -07:00
Josh Blum
627075e60e
uhd: move thread loop condition flag to before barrier (prevents race condition)
2011-04-22 17:02:07 -07:00
Josh Blum
d07870f698
usb: mark libusb callbacks with LIBUSB_CALL to ensure correct calling convention
2011-04-05 20:37:29 -07:00
Josh Blum
1c5076ea68
uhd: implemented boost barriers on all code that creates threads
...
The barrier ensures that the thread must spawn before the caller exits.
Some of the code already used a mutex to accomplish this,
however cygwin chokes when a mutex is locked twice by the same thread.
Mutex implementations were replaced with the barrier implementation.
Also the barrier implementation is far cleaner.
2011-03-31 15:00:56 -07:00
Josh Blum
fb2059949e
usb: fix callback cast in libusb zero copy under msvc
2011-03-21 10:34:16 -07:00
Josh Blum
fc6280dffd
Merge branch 'usb-cancel' into next
...
Conflicts:
host/lib/transport/libusb1_zero_copy.cpp
2011-03-17 14:32:12 -07:00
Nick Foster
9d752805de
USB zero copy impl: proper cleanup for canceled transfers -- wait for cancel before freeing
2011-03-16 10:31:52 -07:00
Josh Blum
09149bbf7d
usrp1: safe destruction for usrp1 device
2011-03-10 14:37:34 -08:00
Josh Blum
16f08844d7
uhd: renamed the assert header to assert has
...
only the assert has implementation is in this header
uhd assert throw moved to the exception header
updated code base includes to match
2011-02-24 14:54:24 -08:00
Josh Blum
2af3e5c49d
uhd: tweaks for windows msvc compiler warnings and errors
2011-02-16 17:19:54 -08:00
Josh Blum
9bc6fbe685
uhd: reusable buffers for libusb zero copy implementation
...
tweaks on udp implementation to simplify
2011-02-15 10:34:37 -08:00
Josh Blum
1be2590962
uhd: tweaks to bounded buffer
...
Added push with haste.
Call with haste first in the wait methods to avoid time compare/wait when not needed.
Added new calls to the libusb and udp zero copy impls
tests pass
2011-02-10 13:58:38 -08:00
Josh Blum
ef351624ee
uhd: replace asio buffer in make safe w/ memory and length, makes things simpler
2011-02-07 12:32:12 -08:00
Josh Blum
ba2523fca4
uhd: removed instances of shared_from_this() in transports
...
Its known to be slow and using sptrs of large objects.
This should be a slight performance improvement
for libusb and usrp_e100_mmap implementation.
2011-02-05 12:44:23 -08:00
Josh Blum
5d10aa397f
uhd: change bounded_buffer implementation and code using it
...
The bounded buffer now uses the detail idiom to hide implementation to inline better.
The whole sptr/make idiom was removed from bounded buffer to just construct directly.
The code using bounded buffer was changed for the new api:
replaces access operators and calls to the factory function.
2011-02-05 12:37:20 -08:00
Josh Blum
e13cf1a128
usb: restored disable_interruption on get_lut_with_wait (gets called externally)
2011-01-21 16:27:14 -08:00
Josh Blum
07710a5f68
usb: use thread interruption in usb zero copy on deconstruction
2011-01-17 14:01:35 -08:00
Josh Blum
a076dc12aa
uhd: update copyright dates
2011-01-05 20:49:45 -08:00
Josh Blum
ed6a2941f8
uhd: created buffer pool to allocate aligned memory, and implemented in transports
2011-01-03 01:43:48 -08:00
Josh Blum
0fc641042e
usb: moved event handler thread into the zero copy interface
2010-10-05 15:47:58 -07:00