| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
| |
|
|
|
|
| |
Reviewed-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
|
|
|
| |
This commit adds devtest support for e320 via tftp. The e320 has
a hardware incompatibility with sdmuxes that we use for the n3xx
devices, which makes them unreliable. Instead this loads a small
Linux OS into the e320 system memory and reimages the sd card
from there.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
| |
|
|
|
|
|
|
|
| |
This allows one setter to call a second setter in an atomic way,
without dropping the lock. This is groundwork for incorporating the power
calibraiton manager, which may change the gain setting during the process
of changing the tuned frequency.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All MPM devices use identical implementations of the transport API.
Minor differences between the actual lines of code in the various
transport adapters are due to minor optimizations, such as hard-coding
'udp' as the only valid transport type for the N3xx series.
This change moves the implementation of the transport API calls
(get_chdr_link_options() and get_chdr_link_types()) into
PeriphManagerBase. The class attributes _xport_adapter_mgrs is also
declared in that class, but defining them is left up to the individual
device implementations.
|
| |
|
|
|
|
| |
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was creating a TX streamer with zero channels.
Without this fix, you might see an error like this:
```
Error: AssertionError: channel < _mtu_out.size()
in connect_channel at
/path/to/uhd/host/lib/rfnoc/rfnoc_tx_streamer.cpp:127
```
|
|
|
|
|
|
|
| |
XportMgrUDP.get_chdr_link_options() now also returns the interface name
(e.g., sfp0) in its return values, which is very useful for identifying
a transport in a different context (e.g., when only the node_inst value
of a transport is known).
|
| |
|
|
|
|
|
|
| |
The current ZBX documents how to use the phase sync feature.
Because phase sync is not working yet, the documentation should
be removed as well.
|
|
|
|
|
|
|
| |
gr-ettus added a stronger UHD version check in the maint-3.8-uhd4.0.
Set this to master instead.
Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main changes included are:
- Variant-dependent pin-out instantiation.
- Update clocking scheme in top level file
to include XO3 PLL
- Add ability to shift outgoing data for
the GPIO communication interface with
the X410 FPGA.
- Include project files required to build
the XO3 variant of the ZBX CPLD.
- Add build flow for Lattice Diamond designs.
- Add ability to build XO3 variant of ZBX CPLD.
|
| |
|
|
|
|
|
|
|
|
|
| |
Since these take awhile to setup, there have been cases where an agent
will get selected for these devices and wait until the previous run
to complete. It's possible that it will take a long time and timeout
if there were other instances launched at similar times.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
This marks the job as a failure on SucceededWithIssues. This could be
from failure in device setup or other reasons.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
| |
This fixes warnings regarding the first argument to $fatal(), which is
supposed to be a number indicating what diagnostics to display. 1
corresponds to "Prints simulation time and location".
|
| |
|
|
|
|
|
|
|
|
| |
This allows underlying benchmark_rate calls to elevate the streaming
threads' priorities. This is similar to how we invoke the streaming test
scripts for DPDK use cases.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
| |
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
Generating this binary allows us to sanity check the linking for UHD
builds on Windows.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
| |
Generating this binary allows us to sanity check the linking for UHD
builds on macOS.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
| |
This allows a UHD build to link to python modules installed in a virtual
environment such a venv or pyenv.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
|
| |
Rebuild UHD to generate the Windows installer. This increases the time
it takes for the job to run, but it removes any interference that other
jobs may have had on the build environment.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
| |
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
|
|
| |
Previously we had documented a known issue involving the Linux kernel,
which was causing a streaming performance regression. This resulted in
periodic underruns. We now know what is causing the regression. Document
the procedure to restore the original behavior.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a dissector based on LUA. The C/C++ based dissector is hard
to use on Windows system, because one needs to compile Wireshark as well.
The LUA based dissector can be used without any compilation and it
runs out of the box on all systems that run wireshark. It also provides
improved preview display in the info column which makes it less often
necessary to lookup data in the detail pane.
Along with the LUA dissector comes a color rules file that colors the
RFNoC packets based on their type which makes navigation in the log
even more easy.
There LUA dissector is able to configure the CHDR width in it's
preferences.
Co-authored-by: Martin Braun <martin.braun@ettus.com>
Co-authored-by: Wade Fife <wade.fife@ettus.com>
Co-authored-by: Aaron Rossetto <aaron.rossetto@ni.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This uses openFPGALoader to flash the fpga before
running the test. This tool is needed because
uhd_image_loader only updates the flash for x3xx,
which requires a hard power cycle to commit.
This openFPGALoader directly updates the fpga
SRAM.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
- Missing override statements
- Rephrase logical statement when reading command FIFO space. The
statement was correct, but Clang12 issues a warning because it
considers the choice of syntax error-prone.
|
|
|
|
| |
This fixes compiler warnings under Clang12.
|
|
|
|
|
|
|
|
|
|
| |
This commit refactors the existing register definitions, so that
duplicate entries don't get added to the get_all_addrs method.
Duplicates caused long builds on macOS/Clang, where build times
would go from sub 5 min to 50 min or more likely because
of the compiler trying to optimize.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
|
|
| |
This commit adds support for reimaging n3xx devices and running
devtest against a n310. This uses Labgrid to control an sdmux,
which we then reimage the device. In the future, other devices can
use this support to run other tests.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
| |
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
This changes the timeout for devtest jobs. Since we are running multiple
devtests per job now, this is needed to avoid timeout failures.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
| |
This code was copy/pasta'd from N3x0. In theory, X410 can have more
options regarding streaming than UDP, although for now, this function
returns the exact same as before, it's just no longer hard coded.
|
|
|
|
|
|
|
|
| |
The gpio values should be output before the stream ends. This matches
the behavior of other tests in this file and prevents strange logs for
passing tests.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When calling `get_gpio_srcs()` or `get_gpio_src()` with an invalid bank
parameter, the error text associated with the `uhd::runtime_error` that
is thrown prints the expected bank, not the erroneous bank, e.g.:
>>> my_x310.get_gpio_srcs('BAD_BANK', 0)
[ERROR] [X300::MB_CTRL] Invalid GPIO source bank: BAD_BANK. Only supported
bank is FP0
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
RuntimeError: RuntimeError: Invalid GPIO source bank: FP0
The invalid source bank on the last line should read BAD_BANK, not FP0.
|
|
|
|
|
| |
Fixes long lines, missing docstrings, and deprecated Pythonisms from
ethdispatch.py and xportmgr_udp.py.
|
| |
|
|
|
|
| |
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
|
|
|
|
|
| |
Co-authored-by: Steven Koo <steven.koo@ni.com>
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
|
| |
|
|
|
|
|
|
| |
This consolidates the different FPGA runs into a single job.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
This enables running the devtests without having to rebuild uhd,
typically for development purposes.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
| |
using the continueOnError option for test run steps is a convenient
way to allow all subsequent steps to run despite a test failure.
But this causes the job status to be 'SucceededWithIssues' and not
a full 'Failed' status.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit reverts the changes made in commit 81a9cc1f8 to reduce the
time for the LMK PLL to report lock status. The decision to revert the
change comes after an investigation found that reducing the overall time
to detect lock correlates with an increase in an error reported by the
TDC ('[ERROR] TDC measurements show a wide range of values! Check your
clock rates for incompatibilities. ... Uncaught exception in method
set_clock_source: TDC measurement out of expected range!'). Despite the
LMK PLL reporting lock status, our investigation revealed that it takes
additional time for the PLL to align the daughterboards' clocks closely
enough to pass the TDC measurement's range limit (i.e., no samples
exceeding the measurement mean +/- 500 ps). Reverting the change
increases the amount of time between achieving lock status and taking
the TDC measurements, thus greatly reducing the likelihood of the
reported error.
|
|
|
|
|
|
|
|
| |
X310 differs from X410 in that it doesn't require the mgmt_addr to
function. This does a check to see if the field has been added,
instead of assuming that it has a value.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|