| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
This is the only occurrence of boost::atomic in UHD.
|
|
|
|
| |
Newer devices may be able to provide more then 32 bits worth of samples.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the following exception types:
- rfnoc_error
- op_failed
- op_seqerr
- op_timeout
- op_timeerr
- access_error
- It is meant to be used when access violations have taken place,
i.e., when a resource is being accessed without appropriate
permissions.
- resolve_error
- This is a derivative of rfnoc_error, and will be used when a
property resolution fails unexpectedly.
- routing_error
- For use when the framework has path setup issues or general
routing-related errors
|
|
|
|
|
|
|
|
|
| |
This removes the following symbols:
- otw_type_t
- clock_config_t
- Any functions that use those symbols
- Non-standard args from examples (e.g., --total-time is deprecated in
favour of --duration)
|
|
|
|
| |
Note: N230 is still supported on the 3.15 LTS branch
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Boost >= 1.58
- CMake >= 3.5.1
- gcc >= 5.4.0
- Clang >= 3.8, AppleClang >= 600
- Python >= 3.5 (Py2k no longer supported)
- Numpy >= 1.11
- C++14 for lib, include may now use C++11 constructs.
- Because there is no more code requiring C++03 syntax, we remove the
include-specific clang-format file
|
|
|
|
|
|
|
| |
This will now allow calls like this:
uhd::dict<k, v> d = /* ... */;
auto m = static_cast<std::map<k, v>>(d);
|
|
|
|
|
|
|
|
| |
Added cmake variable to set the component (currently UHD or MPM).
so the banner printed by the log_resource would reference the correct
component. Added accessor function and appropriate calls in log.cpp.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
This reverts commit 94592641f0647563bc4d2163805d5284a6796273.
The commit itself was OK, but it changed the requirements such that UHD
could only be compiled with C++11.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This requires noc_shell compat number 6.0. It will allow sending as many
command packets, but no more, than there is space.
Updated FPGA images for devices:
- X310/X300
- N300/N310/N320
- E310/E320
|
| |
|
| |
|
|
|
|
| |
Boost moved this around in version 1.58.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This provides a platform-independent attribute to allow fallthroughs in
switch statements. Example:
switch (foo) {
case BAR:
do_something();
UHD_FALLTHROUGH
case BAZ:
do_another_thing();
}
The usage of UHD_FALLTHROUGH will avoid a compiler warning if indeed the
fallthrough was intentional. The associated warning
(-Wimplicit-fallthrough) is only available on gcc and Clang.
|
| |
|
|
|
|
|
|
| |
Blocks that change scaling, tick rate, or sampling rate can now notify
the graph to update streamers. Before, this was handled only by
mult_usrp, and only for DDC and DUC blocks.
|
|
|
|
| |
Using UHD_HEX() requires <iomanip>, which is now part of log.hpp.
|
| |
|
|
|
|
| |
Removes warnings due to -Wdeprecated-copy
|
| |
|
|
|
|
|
| |
Adding pop function to property tree, which will remove and return a
property from the property tree. This also includes unit tests.
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Ran clang-format
- Fixed typos
- Updated copyright headers
clang-format -i --style=file \
host/include/uhd/property_tree.hpp \
host/include/uhd/property_tree.ipp
clang-format -i --style=file \
host/lib/property_tree.cpp host/tests/property_test.cpp
|
|
|
|
|
|
|
|
| |
Clients that include the UHD C headers have access to
the version and ABI #defines, but this is not available
to clients that dynamically load the library. This
commit adds publicly exported functions to provide this
information.
|
|
|
|
|
|
| |
We need to properly contraint the send/recv_frame_size based on the
minimum MTU of all the down/upstream blocks. This fixes the issue with
E310 tx/rx streaming as it has smaller MTU sizes than the other usrps.
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Turns the E310 into an MPM device (like N3xx, E320)
- Factor out common code between E320 and E310, maximize sharing between
the two devices
- Remove all pre-MPM E310 code that is no longer needed
- Modify MPM to remove all existing overlays before applying new ones
(this is necessary to enable idle image mode for E310)
Co-authored-by: Virendra Kakade <virendra.kakade@ni.com>
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
|
|
|
|
|
| |
This removes all version hacks that were required for Boost versions
1.53 through 1.58 (since we now require 1.58).
|
|
|
|
|
|
|
| |
This is a utility for RAII-style operations. An object that will run
code when a scope is left.
Also includes unit tests.
|
|
|
|
|
| |
This avoids having to include config.hpp. Also, the UHD_INLINE should be
avoided in favour of either inline, or UHD_FORCE_INLINE.
|
|
|
|
|
|
|
|
|
|
|
| |
Before, code would get formatted thus:
template <typename T> class X {}
Now, it gets formatted as such:
template <typename T>
class X {}
|
|
|
|
|
| |
They are currently unused, and may need reimplementation. For the time
being, they can go out of the codebase.
|
|
|
|
| |
Updating all SPDX license identifiers to include "-or-later"
|
|
|
|
|
|
| |
This reverts commit 655b9b0f8e8f8556d434404da51aaccd124bbc3a.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
| |
This fixes a warning about multiple operators. Doesn't change any
functionality.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
A node is not a block, it doesn't use any block definition to
populate the number of input and output ports. This is equivalent to it
have undefined number of input and output ports.
The _find_child_node function relies on node input and output port size.
When port size is not defined we should not follow the active channel;
instead, we need to greedily to find all child node.
Without this change graph_search_test will fail.
Signed-off-by: Trung Tran<trung.tran@ettus.com>
|
|
|
|
|
|
|
|
|
|
| |
The configure_flow_control_out function was set to dump any packets
onto the crossbar, which could cause issues on the crossbar and in
downstream blocks. Replacing wil a call to the _flush() function in
the block_ctrl_base parent class, which drops the packets so they do
not get put onto the crossbar.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
|
| |
FC ACK packets are unnecessary on lossless links and degrade overall
performance. This change disables those packets on all lossless links.
Signed-off-by: Michael West <michael.west@ettus.com>
|
|
|
|
|
|
| |
This fixes the build errors that occur due to switching locations of
noncopyable.hpp within Boost, and also allows us to remove
boost::noncopyable in one fell swoop.
|
|
|
|
|
|
|
|
|
|
|
| |
This is a replacement for boost::noncopyable. It has two
implementations with identical APIs, selectable by a macro. One
"implementation" is a renaming of the Boost version. The other is
simply implemented using C++11 features.
The motivation is that the location for boost::noncopyable has changed
over the range of Boost versions, thus, using boost::noncopyable is
difficult to maintain for a broad range of Boost versions.
|
|
|
|
|
|
|
| |
Increase frame size from 364 to 508 samples. Reduces overhead. For
some reason yet to be understood, sizes over 508 do not work.
Signed-off-by: michael-west <michael.west@ettus.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Store number of input and ouptput ports from block definition.
- Use number of input and ouptut ports for graph traversal rather
than number of connected blocks.
- Fixes DAC synchronization failure errors when using only one TX
channel on X300.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
| |
Added explicit use of default block controller to remove warnings.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
|
|
| |
Changed muxed_zero_copy_if to make each stream buffer the same number
of frames as the underlying transport and changed the size of the
underlying control transport for X300 and MPMD devices to match the
size of the command FIFO in order to prevent starvation of any single
control transport. Added some constants to remove hard coded values.
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
|
|
|
| |
Boost changed the macros for endianness identification in 1.69, and the
deprecation warning is a pretty noisy one during compilation. This
abstracts away the Boost macro, so we have two UHD macros,
UHD_BIG_ENDIAN and UHD_LITTLE_ENDIAN. They indicate big and little
endian byte order.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a continuation of 967be2a4. Applying clang-format to files
needed for endianness changes.
$ clang-format -i --style=file \
host/include/uhd/types/endianness.hpp \
host/include/uhd/utils/byteswap.hpp \
host/include/uhd/utils/byteswap.ipp
$ clang-format -i --style=file \
host/lib/convert/convert_with_tables.cpp \
host/lib/transport/chdr.cpp
|
|
|
|
|
|
|
| |
The use of the wildcard channel index, ALL_CHANS, as the default
value for the argument chan in the methods get_{tx/rx}_dc_offset_range
seems inappropriate. A default value of 0 is consistent with other
getters.
|
|
|
|
|
|
| |
Boost changed the lcm() and gcd() functions in Boost 1.67. This creates
portable UHD versions to be used instead. They use various Boost
versions under the hood conditionally.
|