| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
This reverts commit 50bda84c75c2087caebc2bfd5f8e8cd64b41e739.
|
|
|
|
|
|
|
|
| |
This adds the ability to tune the recv and send frames as a parameter.
This is useful since some rates will fail with jitter in the system
with the default settings.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
|
|
|
|
|
|
|
| |
This change increases the benchmark rate priority to high, which reduces
the jitter. This prevents UI interactions from causing overruns and
underruns.
Signed-off-by: Steven Koo <steven.koo@ni.com>
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This was a test written in the early stages of re-writing UHD for the
4.0 release. It tests things that are no longer in use for UHD 4, thus,
the test can go as well.
|
| |
|
|
|
|
|
|
| |
This was removed from CMake ages ago, and hasn't been built in years. It
also no longer compiles. And since we do MPM on E310, it is also
completely pointless.
|
|
|
|
|
|
|
| |
Installed a B210 and added support for usb-based devices in the devtest
pipeline.
Signed-off-by: mattprost <matt.prost@ni.com>
|
|
|
|
|
|
| |
The example refactoring required usage of the get/set source API, which
isn't available on B2xx series. This patch tests for the existence of
said API, and disables its usage if appropriate.
|
|
|
|
|
|
|
|
|
|
| |
The refactoring changed the behaviour of --bitbang: before, it would
terminate after one readback unless --repeat was specified, in which
case it would require a Ctrl-C (SIGINT). After the refactoring, it
always required a SIGINT. This changes the behaviour back to prior to
727141d, and will now only read back once, unless --repeat is provided.
This also fixes the bitbang devtest, which would go on indefinitely.
|
|
|
|
|
|
| |
The atomic item size for the FFT block is always equal to the length of
the FFT, multiplied by bytes-per-sample (4). For now, this is all the
FFT block supports.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The example had organically grown and was getting hard to read, and also
had some known issues. Summary of fixes:
- Default GPIO bank and connector are now derived from the device. This
allows this example to pass without throwing an exception on E3xx and
X4xx series when using default arguments.
- The bitbang test is moved into its own code section, to make the rest
more readable.
- We move all the streamer-related code into a helper struct
- Some repetitive parts of the code are moved into their own functions
- The argument --require-loopback is added, which will fail tests if
GPIO pins are not correctly looped back externally
- --list-banks is renamed to --list_banks for consistency
|
|
|
|
|
| |
FP0 is now listed first. This helps with determining a default GPIO
bank.
|
| |
|
|
|
|
|
|
|
| |
When an assert statement fails, pytest will determine whether that should
be a fail or an xfail. By explicitly calling pytest.fail, we were
preventing pytest from doing that determination, so an individual
test case that had an xfail mark would have been a hard failure.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit fixes an issue in `replay_block_control_impl` with the
initialization of the `_cmd_fifo_spaces` vector member variable.
`std::vector<>::reserve()` only allocates memory for the vector items;
it does not resize the vector (i.e., instantiating an `std::vector<>`
and then calling `reserve()` leaves it with a size of 0). Attempting to
index a zero-sized vector causes some C++ debug mode runtimes to throw
an index out-of-range exception. The commit instantiates the vector
using the constructor variant that allocates memory sufficient for the
entries and default initializes them so that it can be indexed without
issue.
|