| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Its behaviour is almost identical to std::lround, which we use instead.
The only downside of std::lround is that it always returns a long, which
we don't always need. We thus add some casts for those cases to make the
compiler happy.
|
|
|
|
| |
Signed-off-by: Aaron Rossetto <aaron.rossetto@ni.com>
|
|
|
|
|
|
|
|
|
| |
Instead of multiplying zone with the sign repeatedly just make
the zone a signed value.
See #437, #438
Signed-off-by: Aaron Rossetto <aaron.rossetto@ni.com>
|
|
|
|
|
|
|
| |
- Inconsistent usage of asio:: or boost::asio:: (now uses the latter
consistently)
- Removed some usage of boost::format() where it really didn't add any
value
|
|
|
|
|
|
|
|
|
| |
On Boost 1.76, this would otherwise fail with an error:
[...]
.../usrp2_impl.cpp:920:37: error: ‘boost::math’ has not been declared
920 | const int sign = boost::math::sign(new_freq);
[...]
|
|
|
|
|
|
|
|
|
|
|
| |
MPM devices were being discovered when trying to locate PCIe connected
devices. Adding filter to exclude them if the "resource" key is
specified in the device address arguments.
Replaces "lib: disable non pcie types in find with resource" to reduce
impact to older devices and remove API change.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
mpmd find doesn't respect the "resource" arg hint and can be detected
when "resource" is set. This results in incorrect device selection when
using PCIe. This change adds detection for "resource" as a prefix
in the device hints for mpmd and the other devices.
|
| |
|
|
|
|
|
| |
Note: template_lvbitx.{cpp,hpp} need to be excluded from the list of
files that clang-format gets applied against.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note: Replacing everything with a lambda would be even better, but that
can't be easily scripted so we'll do this as a first step to reduce the
Boost footprint.
This also removes occurences of #include <boost/bind.hpp>, and makes
sure all usages of std::bind have an #include <functional>. clang-format
wasn't always applied to minimize the changeset in this commit, however,
it was applied to the blocks of #includes.
Due to conflicts with other Boost libraries, the placeholders _1, _2,
etc. could not be directly used, but had to be explicitly called out
(as std::placeholders::_1, etc.). This makes the use of std::bind even
uglier, which serves as another reminder that using std::bind (and even
more so, boost::bind) should be avoided.
nirio/rpc/rpc_client.cpp still contains a reference to boost::bind. It
was not possible to remove it by simply doing a search and replace, so
it will be removed in a separate commit.
|
|
|
|
|
|
|
| |
Replaced with initialization lists.
Note: uhd::dict does not work with initializer lists without making
changes to said data structure. This commit has no functional changes,
so keeping the boost::assigns for uhd::dict.
|
|
|
|
|
|
|
|
|
|
|
| |
This partially reverts b29e80cc. That commit fixed a bug with numerical
overflows, but also removed the ability to tune using the DAC,
effectively reducing the DSP tuning range.
This commit allows to tune within +/- 200 MHz using a combination of
both the DAC and the DSP tuning in the FPGA.
Reviewed-by: Derek Kozek <derek.kozel@ettus.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To avoid the proliferation of additional include directories and
multiple ways of including project-local headers, we now default to
moving all headers that are used across UHD into the uhdlib/
subdirectory.
Some #include statements were also reordered as they were modified for
closer compliance with the coding guidelines.
Internal cpp source files should now include files like this:
#include <uhdlib/rfnoc/ctrl_iface.hpp>
Reviewed-by: Ashish Chaudhari <ashish.chaudhari@ettus.com>
|
|
|
|
|
|
|
| |
All copyright is now attributed to "Ettus Research, a National
Instruments company".
SPDX headers were also updated to latest version 3.0.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
| |
USRP1 and USRP2 used tasks that relied on Boost thread interruption
mechanisms. These were replaced with explicit atomics.
|
| |
|
| |
|
|
|
|
|
| |
Note: This is the first commit that uses for-range, and range-based
for-loops are now usable for UHD development.
|
|
|
|
|
|
|
|
| |
types)
- Also removes all references to boost/cstdint.hpp and replaces it with
stdint.h (The 'correct' replacement would be <cstdint>, but not all of our
compilers support that).
|
|
|
|
|
|
| |
- Moved dboard iface initialization to dboard_manager
- Added a restricted register function. Restricted dboards
don't expose their control iface in the property tree
|
|
|
|
|
|
|
|
|
| |
- Added desired and coerced values and accessors to property
- Added support to register desired subscribers
- set APIs don't reallocate storage for a property value
- Renamed callback method registration APIs
- Registering 2 coercers or publishers for a property will throw
- Registering a coercer and a publisher for the same property will throw
|
| |
|
|
|
|
|
|
| |
* Single class for loading firmware/FPGA images onto devices instead of multiple utilities
* Loading functions are registered for each device, corresponding to their --args="type=foo" name
* Deprecation warnings added to all product-specific image loading utilities
|
| |
|
| |
|
|
|
|
| |
This fixes RX DSP core 200 from tuning outside range and causing overflows.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
* Add "ignore-cal-file" to the uhd::device_addr_t arguments
* Added documentation for new feature
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Added analog delay for radio clock
- Added analog delay for DAC reference clocks
- Removed resetting of clock control
- Removed setting of reference clock and PPS to external sources during initialization
- Fixes for set_time_unknown_pps
- Removed wait for PPS edge after setting time from GPSDO
- Changed set_time_unknonw_pps to time out based on system time rather than device VITA time
|
|\|
| |
| |
| |
| | |
Conflicts:
host/utils/usrp_burn_mb_eeprom.cpp
|
| |
| |
| |
| | |
- Added polling for PPS time change after setting time from GPSDO.
|
|/
|
|
|
|
|
|
|
|
| |
* OctoClock can communicate with UHD over Ethernet
* Can read NMEA strings from GPSDO and send to host
* Added multi_usrp_clock class for clock devices
* uhd::device can now filter to return only USRP devices or clock devices
* New OctoClock bootloader can accept firmware download over Ethernet
* Added octoclock_burn_eeprom,octoclock_firmware_burner utilities
* Added test_clock_synch example to show clock API
|
|\
| |
| |
| |
| | |
Properly initializing time and clock source on N-Series to prevent small drift
prior to lock.
|
| |
| |
| |
| | |
- Added initialization of clock and time sources
|
|/ |
|
| |
|
|
|
|
|
| |
This send can fail with a network down/unreachable error.
The try/catch allows for discovery to continue.
|
| |
|
|
|
|
|
|
| |
We used to only check if the EEPROM was setup properly.
But now we always check, but check only once after first power up,
and disable the check if not found.
|
|
|
|
| |
When an on-board GPSDO is detected, "gpsdo" is added to the options.
|
| |
|
| |
|
|
|
|
|
| |
This variable gets set based on the rev type
so we can support the command fifo when present.
|
|\ |
|