| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
- Also updated device args and subdev spec
|
| |
|
|
|
|
|
|
|
| |
Newer revisions of the E320 and N3xx motherboards use EEPROM version 3,
and store a rev_compat field. The rev_compat is the last revision that
this hardware is compatible with. We now use that instead of simply the
revision.
|
|
|
|
|
|
|
|
|
|
| |
This includes a rev_compat field, which we can use to identify the last
hardware revision this hardware is compatible with. Example: Say the
current hardware revision is 7, but it is compatible with version 5,
then we store 7 as the current rev, and 5 as the rev_compat. Software
can now check the rev_compat rather than the current rev for
compatibility. This makes MPM more future-proof against minor,
compatible hardware changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tick_node was trying to find the current tick rate by only querying
active blocks (i.e., blocks that were flagged active-streaming).
However, this is not necessary since we require all blocks to run at the
same tick rate.
In theory, querying active-only ports should be fine, but due to some
idiosyncrasies in our current graph code, connecting a single streamer
to channel 1 (out of 0, 1) would try and get the info from the wrong
port. This is not a fix to the graph code, but the change to tick_node
is also appropriate and is sufficient to fix the "late packets on
channel 1" issue.
This issue would manifest when sending timed packats to channel 1 in
a single-channel streamer. The problem is that it wouldn't be able to
read the correct tick rate.
|
|
|
|
|
|
| |
TRACE: Remains purple, but that's now no longer bright
ERROR: Is now bright red (was non-bold red before)
FATAL: Is now red-on-yellow
|
|
|
|
|
|
| |
The colour codes used for console logging were incorrectly defined.
Some colours would simply not rendered this way (e.g., red), others
had the boldness flag wrong.
|
| |
|
| |
|
|
|
|
|
| |
- adds a new mode to the adf435x driver which provides general spur performance
improvements
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
- No driver changes required
Signed-off-by: michael-west <michael.west@ettus.com>
|
|
|
|
|
| |
This will clear the property tree, block registry, transport managers,
and motherboard list on destruction of mpmd_impl.
|
|
|
|
|
|
| |
This will make sure that the context holder for the liberio context is
destroyed when the last liberio transport is destroyed, and not on
termination of the program.
|
|
|
|
|
|
|
|
|
| |
The reclaim task loop is asnychronous to the main thread which can
result in spurious reclaim call to the device after unclaim has been
called. This is especially risky if the device has already entered a
non-serviceable state after unclaim e.g. idle state.
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
If the number of channels for embedded mode streaming is 4
(1 for ctrl, 1 for async messages and 2 for data ), we need to
mux the data transport. This is needed for E310
|
|
|
|
|
|
| |
This fixes a potential mismatch between the returned frequency and
clock rate and the actual value. The new function get_clock_rate is
need for async call to set_clock_rate in E3xx devices
|
|
|
|
|
| |
This is needed for E31x with thermal sensors on different
subsystems e.g. iio, hwmon.
|
|
|
|
|
| |
When running 'make test_***', it now also defaults to
RUNTIME_PYTHON_EXECUTABLE.
|
|
|
|
|
|
| |
The build guide manual page now takes the min versions for the
dependencies straight from CMake. This avoids having to update the
manual whenever we bump depdendencies.
|
|
|
|
|
| |
This removes all version hacks that were required for Boost versions
1.53 through 1.58 (since we now require 1.58).
|
|
|
|
|
|
|
|
|
|
| |
- gcc >= 4.8 (same as before)
- Clang >= 3.8
- CMake >= 3.5.1
- Boost >= 1.58
Note: This also removes version-specific hacks for older CMake versions.
Now that we require 3.5.1 they are no longer necessary.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- In general, some comments to clarify the dependencies installation and building process for windows users.
- Add a comment to the required packages for MSCV.
- Provide instructions to install Python requirements.
- Add the instructions of NSIS installation.
- Add comments to the version match between different installers.
- Clarify the instructions of building process using Cmake
- Add a subsection to show how a binary UHD installer can be obtained.
- Correct the URL of Doxygen.
|
| |
|
|
|
|
|
| |
- Update MB EEPROM
- Add bootloader load command to fx3 util
|
|
|
|
|
|
|
| |
In log.cpp, a deadlock can occur while popping elements from the log
queue. If the queue is empty, the call does not timeout, and waits
infinitely. Replacing pop_with_wait() with pop_with_timed_wait() solves
this issue.
|
|
|
|
| |
`clang-format -i --style=file host/lib/utils/log.cpp`
|
|
|
|
|
| |
- Adds custom bootloader code
- Refactor common functions in firmware and bootloader
|
|
|
|
|
|
| |
Pull some general functionality out of a specific test case and create
a TestBase class. Future test cases will inherit from TestBase and have
access to this general functionality.
|
| |
|
|
|
|
|
| |
dpdk_zero_copy.hpp was referenced in multiple places using relative
paths. Let's throw it in uhdlib for easy access.
|
|
|
|
|
| |
Use dpdk_simple together with a control transport factory.
Where udp_zero_copy is used, use dpdk_zero_copy if use_dpdk=1.
|
|
|
|
| |
With the same APIs, this will make it easier to add support for X310.
|
|
|
|
|
|
| |
The NI-2974 has a X310 inside but reports a different "product" when
polled. This prevents the image_loader from flashing a new FPGA image,
this patch enables this.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Occasionally, MPM would check its links before the kernel would report
link up, and it would then shave those ports off the CHDR link list
prematurely. This commit adds a second of wait to allow the kernel time
to respond.
It also includes some additional reporting of link status, since Intel
PMDs may report a misleading initial state upon bring-up.
|