Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | build: Enable SSSE3 sc12 converters by build switch only | Tom Tsou | 2017-07-26 | 1 | -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 sc12 | Tom Tsou | 2017-07-25 | 7 | -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 macros | Martin Braun | 2017-07-21 | 2 | -0/+72 |
| | |||||
* | C API: Added constructor for empty sensor value handles' | Martin Braun | 2017-07-20 | 1 | -0/+15 |
| | |||||
* | convert: Add sc12-sc16 converters | Tom Tsou | 2017-07-18 | 2 | -24/+117 |
| | | | | | | | | | | | | | | | | | 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 messages | Martin Braun | 2017-07-18 | 1 | -2/+6 |
| | |||||
* | Merge branch 'maint' | Martin Braun | 2017-07-17 | 4 | -22/+66 |
|\ | |||||
| * | fixup! x300: Changed discovery to return early if we find the serial requested | Brent Stapleton | 2017-07-05 | 1 | -1/+1 |
| | | |||||
| * | x300: Changed discovery to return early if we find the serial requested | bstapleton | 2017-06-30 | 1 | -1/+15 |
| | | |||||
| * | cbx: turn on LO LPF at <2GHz instead of <1.5GHz | Mark Meserve | 2017-06-30 | 2 | -18/+38 |
| | | |||||
| * | UBX: Added error handling for setting the dboard clock rate. | bstapleton | 2017-06-29 | 1 | -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.64 | Martin Braun | 2017-07-06 | 1 | -0/+4 |
| | | |||||
* | | e300: Fixed product name to show device and speed grade | Sugandha Gupta | 2017-06-30 | 2 | -4/+13 |
| | | |||||
* | | rfnoc: Fixed SRAM FIFO indexing | Martin Braun | 2017-06-30 | 1 | -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. | ||||
* | | X3xx: Added image loader support for reading FPGA images | Paul David | 2017-06-30 | 1 | -17/+219 |
| | | |||||
* | | X3xx: Incremented firmware compat version minor | Paul David | 2017-06-30 | 1 | -1/+1 |
| | | |||||
* | | X3xx: Updated firmware to support reading FPGA image data | Paul David | 2017-06-30 | 1 | -0/+16 |
| | | |||||
* | | docs: Fixed doxygen warnings | sugandhagupta | 2017-06-29 | 2 | -22/+28 |
| | | |||||
* | | utils: add set_thread_name API call, move thread_priority to thread | Andrej Rode | 2017-06-29 | 10 | -13/+64 |
| | | |||||
* | | uhd: Replaced many lexical_cast with appropriate C++11 equivalents | Martin Braun | 2017-06-29 | 32 | -96/+78 |
| | | |||||
* | | ad9361: Reconfigure Rx HB filters with MCR >58 MHz | Tom Tsou | 2017-06-28 | 1 | -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 code | Martin Braun | 2017-06-28 | 1 | -8/+18 |
| | | |||||
* | | uhd: tasks now use std::threads under the hood, and can't be interrupted | Martin Braun | 2017-06-28 | 7 | -35/+39 |
| | | | | | | | | | | USRP1 and USRP2 used tasks that relied on Boost thread interruption mechanisms. These were replaced with explicit atomics. | ||||
* | | Merge branch 'maint' | Martin Braun | 2017-06-28 | 1 | -365/+0 |
|\| | |||||
| * | x300: Removed stray file | Martin Braun | 2017-06-28 | 1 | -367/+0 |
| | | |||||
* | | rfnoc: Fixed radio compiler warnings | Martin Braun | 2017-06-27 | 1 | -5/+5 |
| | | |||||
* | | Merge branch 'maint' | Martin Braun | 2017-06-27 | 1 | -1/+1 |
|\| | |||||
| * | e310: Clarified log message re GPS | Martin Braun | 2017-06-27 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'maint' | Martin Braun | 2017-06-27 | 14 | -212/+260 |
|\| | |||||
| * | E300: Modify e300_poll_waiter to reduce minimum timeout and fix race condition | michael-west | 2017-06-27 | 1 | -14/+24 |
| | | |||||
| * | Revert "xcvr: Query ref clock, not ADC/DAC clock" | Martin Braun | 2017-06-26 | 1 | -1/+1 |
| | | | | | | | | This reverts commit 60920644aa33d1a6f7a4dac30bdb890b9bc4301f. | ||||
| * | X300: Fix DAC sync | michael-west | 2017-06-26 | 2 | -53/+14 |
| | | |||||
| * | X300: Implement single DMA channel for all async messages | Michael West | 2017-06-26 | 4 | -15/+45 |
| | | |||||
| * | X300: Dual channel TX performance improvements | Michael West | 2017-06-26 | 6 | -118/+157 |
| | | |||||
| * | twinrx: add reimport to LO options on property tree | Mark Meserve | 2017-06-15 | 1 | -1/+1 |
| | | |||||
| * | twinrx: add reimport lo mode | Mark Meserve | 2017-06-15 | 3 | -16/+21 |
| | | |||||
* | | b200: Fixed logging messages during FPGA image loading. | Martin Braun | 2017-06-16 | 1 | -11/+19 |
| | | |||||
* | | x300: Added location info to FW ctrl error messages | Ashish Chaudhari | 2017-06-15 | 2 | -2/+18 |
| | | |||||
* | | rfnoc radio: Made GPIO functions not pure virtual | Martin Braun | 2017-05-26 | 2 | -0/+28 |
| | | | | | | | | | | Default implementations simply throw an exception. Makes it easier to write new radio controls that do not implement GPIO features. | ||||
* | | rfnoc: Backported GPIO controls on radio blocks | Martin Braun | 2017-05-24 | 2 | -0/+67 |
| | | |||||
* | | Add missing variable initialization | Martin Siegumfeldt | 2017-05-23 | 1 | -1/+2 |
| | | | | | | | | | | | | - and thereby avoid deadlock upon the first wait() invocation Signed-off-by: Martin Siegumfeldt <mns@gomspace.com> | ||||
* | | Types: Added equality/inquality operators to support Boost.Python additions | Paul David | 2017-05-23 | 2 | -0/+20 |
| | | | | | | | | | | | | - Added to subdev_spec_pair_t - Added to range_t - Added tests for the inequalities | ||||
* | | log: Removed timeout from logger, replaced with wait. | Martin Braun | 2017-05-23 | 1 | -2/+20 |
| | | | | | | | | | | This works because there's also another trace message on termination of the logger. | ||||
* | | log: Remove logging out of any UHD_STATIC_BLOCK. | trungnob | 2017-05-20 | 3 | -4/+4 |
| | | | | | | | | | | | | Window DLL loading is causing deadlock due to thread creation and synchronization of logging system; therefore, we want to remove it for now. | ||||
* | | log: Moved print_system_info to log.cpp. | trungnob | 2017-05-20 | 2 | -11/+18 |
| | | | | | | | | | | We want to display syteminfo when the log system get initialized. Also removes a static block. | ||||
* | | multi_usrp: Added more checks for properties that may not exist | Martin Braun | 2017-05-15 | 1 | -3/+12 |
| | | |||||
* | | Merge branch 'maint' | Martin Braun | 2017-05-15 | 1 | -2/+28 |
|\| | |||||
| * | device3: Improved busy loop for tx flow control polling on slower machines | Patrick Sisterhen | 2017-05-08 | 1 | -2/+28 |
| | | | | | | | | Effectively adds a yield statement inside the busy loop. | ||||
* | | log: Split add_logger() out of the main logging header | Martin Braun | 2017-05-12 | 1 | -0/+1 |
| | | | | | | | | | | This way, C++11 features are not required to build with UHD headers included. | ||||
* | | x300: Fixed TODO (used auto) | Martin Braun | 2017-05-04 | 1 | -3/+1 |
| | |