aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* converters: Remove log message in register_converterMartin Braun2017-09-291-1/+1
| | | | | Similar to b431866a5, this reduces logging in static initializer blocks. Those are prone to hang during DLL initialization.
* uhd: Changed mboard_eeprom_t interface, refactored MB EEPROM codeMartin Braun2017-09-2934-935/+1026
| | | | | | | | | | | | - uhd::usrp::mboard_eeprom_t is now simply a map. Its commit() method has no utility being a public API call, because the user never gets access to the appropriate I2C object (Minor API breakage) - The central mboard_eeprom.cpp file was broken up and put into many smaller compilation units in every device's implementation folder. - Renamed some of the constants (e.g. B000_* -> USRP1_*, N100_* -> N200_*) - Removed the N000_* EEPROM code, because, well, you know, there's no such device
* C API: Better error handling in uhd_usrp_get_?x_streamMartin Braun2017-09-281-2/+4
| | | | | In uhd_usrp_get_rx_stream and uhd_usrp_get_tx_stream, an error will now be propagated into the streamer handle.
* C API: Make uhd_rx_streamer_last_error use SAFE_CCarl Reinke2017-09-281-1/+1
| | | | | | | uhd_tx_streamer_last_error and uhd_usrp_last_error use UHD_SAFE_C and so uhd_rx_streamer_last_error should as well in order to be consistent. Currently using UHD_SAFE_C_SAVE_ERROR.
* rfnoc: Fixed seq # error message in ctrl_ifaceMartin Braun2017-09-281-2/+3
|
* rfnoc: Do not pop a sequence number earlyTom Bereknyei2017-09-281-1/+1
| | | | | | The ctrl_iface class will assume that a response packet is available. There are cases where no response packet is available, in which case sequence numbers should not get popped from the stack prematurely.
* uhd: Deprecating atomic.hpp and time_spec_t::get_system_time()HEADmasterMartin Braun2017-09-012-3/+6
| | | | | These APIs will be moved to a non-public API in the future and should no longer be used in user applications.
* C API: Dboard EEPROM revision error handling fixMartin Braun2017-09-012-2/+28
| | | | | For invalid dboard revisions stored in the EEPROM, provide a better error message.
* C API: Make uhd_get_last_error() thread-safeMartin Braun2017-08-072-3/+8
| | | | | | The function was directly accessing the error message cache, bypassing locks, and thus could be faulty if being called the same time as another UHD component would update the error string.
* C API: Remove API calls that don't map to C++ callsMartin Braun2017-08-072-37/+0
| | | | | Specifically, remove set_tx_dc_offset() and set_tx_iq_balance() calls that require doubles, and were given bools.
* transport: Added liberio_zero_copy transport implementationMoritz Fischer2017-08-076-0/+341
| | | | | | | | | | | | This adds a zero copy transport using the liberio library. Currently supported API version for liberio is 0.3, this might still very much break, since the library is still in development. So far nobody uses it UHD so we might as well merge it. Signed-off-by: Alex Williams <alex.williams@ni.com> Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
* lib: rfnoc: cmake: Fix typo in CMakeLists.txtMoritz Fischer2017-07-271-2/+2
| | | | | | | | The file was missing a .cpp suffix for the dma_fifo_block_ctrl_impl file, somehow CMake was being smart and inferring the filetype. Be explicit. Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
* build: Enable SSSE3 sc12 converters by build switch onlyTom Tsou2017-07-261-0/+2
| | | | | | | | | | | | | | | The existence of SSSE3 intrinsic headers is not a sufficient condition that SSSE3 support is available, which may lead to 'illegal instruction' runtime failuire on some platforms. Major OS distributions (Ubuntu, Fedora, etc.) include x86_64 intrinsic headers, though the underlying architecture may or may not support the instruction set. Assuming SSE2 availability is safe as instructions are present on all x86_64 architectures for which instrinsic headers would be present. The same cannot be said for SSSE3. Issue: #1761
* convert: Add SSE implementation for sc12Tom Tsou2017-07-257-211/+719
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementation uses SSSE3 intructions to perform 12-bit sample pack/unpack operations to/from standard 16 and 32 bit host values. Input/output shuffle orderings for a single 128-bit SSE register with 16-bit integers shown below. 16-bit interleaved I/Q --------------------------------------- | Q3 | I3 | Q2 | I2 | Q1 | I1 | Q0 | I0 | Input --------------------------------------- | 127 0 | 12-bit packed I/Q byteswapped ----------------------- | I0 | Q0 | I1 | 0 |-----------------------| | I1 | Q1 | I2 | Q2 | Output |-----------------------| | Q2 | I3 | Q3 | |-----------------------| | Unused | 3 ----------------------- 31 0 Fixes: #1740, #966 Related: #1739
* C API: Added logging macrosMartin Braun2017-07-215-0/+170
|
* C API: Added constructor for empty sensor value handles'Martin Braun2017-07-202-0/+29
|
* Merge branch 'maint'Martin Braun2017-07-193-70/+90
|\
| * docs: Minor formatting updates to R&D test proceduresMartin Braun2017-07-181-60/+65
| |
| * Preparing branch for 3.10.2.0 release.Martin Braun2017-07-184-12/+27
| | | | | | | | | | | | | | - Updated version string - Updated fpga-src submodule - Updated CHANGELOG - Updated images package
* | convert: Add sc12-sc16 convertersTom Tsou2017-07-184-27/+169
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create missing sc12-sc16 and sc16-sc12 type converters. To avoid replicating the full sc12 converter class object, overload the converter calls with C++11 std::enable_if metafunctions. When used with std::is_floating and std::is_integral templates, this allow a single template interface with compile time function selection and static type checking. Note the below std::enable_if interface is confusing, but quite effective in this case. typename enable_if<is_floating_point<type>::value>::type* = NULL Fixes: #966 Related: #967, #1721
* | ubx: Fixed UHD_MSG style log messagesMartin Braun2017-07-181-2/+6
| |
* | Merge branch 'maint'Martin Braun2017-07-178-32/+172
|\|
| * utils: Added warnings and checks to images downloaderDerek Kozel2017-07-171-0/+14
| |
| * converters: Added some tolerance for floating point-based tests to account ↵Martin Braun2017-07-071-2/+7
| | | | | | | | for acceptable rounding
| * CHANGELOG: Imported overlap from 3.9.LTS branchMartin Braun2017-07-071-0/+14
| |
| * fixup! x300: Changed discovery to return early if we find the serial requestedBrent Stapleton2017-07-051-1/+1
| |
| * x300: Changed discovery to return early if we find the serial requestedbstapleton2017-06-301-1/+15
| |
| * cbx: turn on LO LPF at <2GHz instead of <1.5GHzMark Meserve2017-06-302-18/+38
| |
| * examples: Improved output for latency_testMartin Braun2017-06-301-8/+71
| |
| * UBX: Added error handling for setting the dboard clock rate.bstapleton2017-06-291-3/+13
| | | | | | | | Setting daughterboard clock rate while using UBX on X300 caused an error. Added handling, now throws a warning that the phase will vary.
* | boost: Added workaround for Boost 1.64Martin Braun2017-07-061-0/+4
| |
* | e300: Fixed product name to show device and speed gradeSugandha Gupta2017-06-302-4/+13
| |
* | rfnoc: Fixed SRAM FIFO indexingMartin Braun2017-06-301-3/+12
| | | | | | | | | | | | | | Loopback FIFOs ("SRAM FIFOs") only have a single channel, unlike the DRAM FIFOs (and that's also the reason why we have full bandwdith between all channels using those). We thus need to ensure that every TX stream gets its own SRAM FIFO.
* | Utils: Added X3xx support for reading FPGA imagesPaul David2017-06-301-9/+18
| |
* | X3xx: Added image loader support for reading FPGA imagesPaul David2017-06-302-18/+222
| |
* | X3xx: Incremented firmware compat version minorPaul David2017-06-301-1/+1
| |
* | X3xx: Updated firmware to support reading FPGA image dataPaul David2017-06-302-1/+56
| |
* | examples/c-api: Fix invalid free of device_argssugandhagupta2017-06-292-8/+10
| | | | | | | | | | | | | | | | | | One does not simply free() stack / automatic variables. Please `man 3 strdup()`. Signed-off-by: Sugandha Gupta <sugandha.gupta@ettus.com> Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
* | made FX2 EEPROMS and firmware build with modern SDCC 3.6Marcus Müller2017-06-2931-472/+472
| |
* | docs: Fixed doxygen warningssugandhagupta2017-06-294-26/+35
| |
* | utils: add set_thread_name API call, move thread_priority to threadAndrej Rode2017-06-2942-84/+177
| |
* | uhd: Replaced many lexical_cast with appropriate C++11 equivalentsMartin Braun2017-06-2942-121/+97
| |
* | ad9361: Reconfigure Rx HB filters with MCR >58 MHzTom Tsou2017-06-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | Disable halfband HB3 (shortest and closest filter to the ADC) and enable HB2 (larger and second closest filter to the ADC). This significantly reduces HB excess bandwidth rolloff and reduces the effective noise floor by ~20 dB at rates above 58 MHz. The filter change has no effect at clock rates below 58 MHz. Fixes #1542 "Significant raise in noise floor using MCR above 58MHz"
* | rfnoc: Added some more logging in graph codeMartin Braun2017-06-281-8/+18
| |
* | uhd: tasks now use std::threads under the hood, and can't be interruptedMartin Braun2017-06-2810-41/+82
| | | | | | | | | | USRP1 and USRP2 used tasks that relied on Boost thread interruption mechanisms. These were replaced with explicit atomics.
* | Merge branch 'maint'Martin Braun2017-06-281-365/+0
|\|
| * x300: Removed stray fileMartin Braun2017-06-281-367/+0
| |
* | Merge branch 'maint'Martin Braun2017-06-271-0/+6
|\|
| * b200: Added doc regarding external+GPSDO ref issuesMartin Braun2017-06-271-0/+6
| |
* | Merge branch 'maint'Martin Braun2017-06-272-2/+22
|\|