aboutsummaryrefslogtreecommitdiffstats
path: root/host
Commit message (Collapse)AuthorAgeFilesLines
* 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-192-62/+67
|\
| * 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-182-4/+4
| | | | | | | | | | | | | | - 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-177-32/+158
|\|
| * 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
| * 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-301-0/+16
| |
* | 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>
* | docs: Fixed doxygen warningssugandhagupta2017-06-294-26/+35
| |
* | utils: add set_thread_name API call, move thread_priority to threadAndrej Rode2017-06-2941-83/+176
| |
* | 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
|\|
| * docs: Updated X300 docs to refer to the Knowledge Base regarding ↵bstapleton2017-06-271-1/+4
| | | | | | | | daughterboard selection/compatibility.
| * e310: Added some doc comments on frontend tuningMartin Braun2017-06-271-1/+18
| |
* | rfnoc: Fixed radio compiler warningsMartin Braun2017-06-271-5/+5
| |
* | Merge branch 'maint'Martin Braun2017-06-272-4/+10
|\|
| * e310: Clarified log message re GPSMartin Braun2017-06-271-1/+1
| |
| * docs: Clarified use of "gpsdo" for E310Martin Braun2017-06-271-3/+9
| |
* | Merge branch 'maint'Martin Braun2017-06-2715-214/+262
|\|
| * E300: Modify e300_poll_waiter to reduce minimum timeout and fix race conditionmichael-west2017-06-271-14/+24
| |
| * Fix: field was bool, but needs to take values -1;1Marcus Müller2017-06-271-2/+2
| |