Commit Graph

9465 Commits

Author SHA1 Message Date
Aki Tomita
8f9508f797 Prepare branch for 4.1.0.7 release 2023-04-27 15:26:12 -05:00
Aki Tomita
6a9f4e5c41 Prepare branch for 4.1.0.7 release
- Updated version string
 - Updated CHANGELOG
 - Updated Debian-related files
 - Updated images package
2023-04-25 19:15:36 -05:00
Steven Koo
888a26488c ci: Update commit vcpkg and CMake version
Signed-off-by: Steven Koo <steven.koo@ni.com>
2023-04-25 13:43:29 -05:00
Aki Tomita
93cc480d25 test: add proper include 2023-04-24 21:25:14 -05:00
Volkan Öz
addbd086de mpm: Simplify x4xx_bist nsync_fabric
The PLL itself looks good since
it can lock to the OCXO which provides a clean clock.
The Fabric Clock is very jittery which can lead to false fails.
That is why instead of locking to jittry reference signals we will just use
the internal amplitude monitor which per default is enabled and read back the status bit.

Once a signal has been detected the test will pass.
2023-04-21 10:48:42 -05:00
Steven Koo
1a5b4fd20f uhd: Prepare branch for 4.1.0.6 release
images: Update manifest
Signed-off-by: Steven Koo <steven.koo@ni.com>
2022-11-15 11:33:34 -06:00
Steven Koo
472a6eb70b uhd: Prepare branch for 4.1.0.6-rc2 release
debian: Update changelog
images: Update manifest
uhd: Update changelog

Signed-off-by: Steven Koo <steven.koo@ni.com>
2022-08-04 09:52:45 -05:00
Javier Valenzuela
f4e852b5fd images: Update ZBX CPLD image in manifest 2022-08-04 09:52:45 -05:00
Steven Koo
c3fdc4016c uhd: Prepare branch for 4.1.0.6-rc1 release
cmake: Increase patch version number
debian: Update changelog
images: Update manifest
uhd: Update changelog

Signed-off-by: Steven Koo <steven.koo@ni.com>
2022-07-13 14:08:11 -05:00
Javier Valenzuela
604f6eaaca images: Update manifest with latest cpld firmware 2022-07-13 13:52:22 -05:00
Aaron Rossetto
80aabd0d87 N320: Revert PLL lock time reduction
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.
2022-07-13 13:52:22 -05:00
Virendra Kakade
da9b9d7010 REVERT images: zbx lattice cpld image manifest
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2022-07-13 09:31:26 -05:00
Virendra Kakade
306d833331 mpm: add support for lattice zbx cpld
Co-authored-by: Steven Koo <steven.koo@ni.com>
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2022-07-13 09:31:15 -05:00
Virendra Kakade
bd37403b49 fixup! uhd: add support for max10 variants 2022-07-13 09:28:43 -05:00
Aaron Rossetto
6bd0be9cda uhd: Prepare branch for 4.1.0.5 release
images: Update manifest
uhd: Update changelog
debian: Update changelog
2021-12-14 12:37:20 -06:00
Matthew Crymble
17a7eec0b6 docs: remove bmaptool instructions for writing filesystems
Due to a change in Mender, bmaptool is no longer supported for writing filesystem images.
Currently, the only recommended method for writing a filesystem to an SD card is to use dd.
The filesystem can still be updated in place using mender.
2021-12-14 12:33:33 -06:00
Aaron Rossetto
18f5f9a4f1 uhd: Prepare branch for 4.1.0.5-rc2 release
uhd: Update manifest
uhd: Update changelog
2021-12-06 10:21:07 -06:00
Martin Braun
95810acae9 mpm: x4xx: Add checks before accessing self.dio_control
The X4x0 MPM code doesn't always load the object for the DIO control, it
only does that when certain checks pass (EEPROM readouts need to match
expected values). Therefore, `self.dio_control` may be NoneObject during
operations, and in other areas of the code, we already check if that's
the case.

The APIs added in c36fc5f don't have these checks, which means accessing
these new APIs may result in odd exceptions when trying to dereference
a NoneType object. By adding checks for the initialization state of
`self.dio_control`, we can avoid these and either substitute better
error messages / exception messages, or return safe values.

Note that mpmd_mb_controller also accesses this object indirectly by
checking the length of the return value of get_gpio_banks(). This check
is not affected by this change, as we now are guaranteed to return an
empty list if there is no self.dio_control.
2021-12-06 10:17:39 -06:00
Aaron Rossetto
5531a1c34e uhd: Prepare branch for 4.1.0.5-rc1 release
images: Update manifest
cmake: Increase patch version number
uhd: Update changelog
2021-12-03 08:29:21 -06:00
Aaron Rossetto
26793b81dc fpga: Revert "Add ability to get time from Radio block"
This reverts commit 42873ad467.
2021-12-02 18:43:47 -06:00
Aaron Rossetto
16365cdc7d host: Revert "Add ability to get time from Radio block"
This reverts commit c6d062fb34.
2021-12-02 18:43:41 -06:00
Aaron Rossetto
139522ae63 multi_usrp_rfnoc: Revert "Reduce latency of get_time_now()"
This reverts commit 0e63f9b3f0.
2021-12-02 18:43:32 -06:00
Virendra Kakade
d7f7ffe69d mpm: x4xx: update mboard_max_rev
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2021-12-02 18:38:56 -06:00
Virendra Kakade
f2f584589b uhd: add support for max10 variants
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2021-12-02 18:38:56 -06:00
Virendra Kakade
5993ca7675 uhd: update manifest for x410 cpld
Signed-off-by: Virendra Kakade <virendra.kakade@ni.com>
2021-12-02 18:38:56 -06:00
Aaron Rossetto
1d504a6c24 uhd: Update manifest 2021-12-01 18:16:14 -06:00
Martin Braun
6010712154 rfnoc: radio: Fix async message handling channel checks
The async message handler and the async message validator would
erroneously compare channel numbers for RX async messages with the
number of valid TX channels. On TwinRX, where there are zero TX
channels, this would always fail. Elsewhere in the code, the comparisons
for TX and RX channels mixed up input and output ports.

The second issue is that the comparison made was a "greater than" rather
than "greater or equal".

The effect of these two bugs was that potentially, we could have
accepted async messages for an invalid port N, where N is the number of
valid ports of this block, and that for TwinRX/X300 users, async
messages on channel 1 would not get accepted (they would, however, get
accepted for channel 0 because of the second issue). This includes
overrun handling, which was broken for channel 1 and 3 on an X300.

Another effect of the bug was that EPIDs for async messages weren't
always programmed correctly.
2021-11-30 13:35:48 -06:00
michael-west
0e63f9b3f0 multi_usrp_rfnoc: Reduce latency of get_time_now()
Getting the time from the mb_controller is slow, so try to get the time
from the Radio on the fast path first.

Signed-off-by: michael-west <michael.west@ettus.com>
2021-11-30 13:35:48 -06:00
michael-west
c6d062fb34 host: Add ability to get time from Radio block
Add API calls to Radio control to get ticks and time.

Signed-off-by: michael-west <michael.west@ettus.com>
2021-11-30 13:35:48 -06:00
michael-west
42873ad467 fpga: Add ability to get time from Radio block
Added registers to read back radio time.  Bumped minor compat.

Signed-off-by: michael-west <michael.west@ettus.com>
2021-11-30 13:35:48 -06:00
Martin Braun
c58d999b90 tests: Remove skip_dram from streaming performance test script 2021-11-30 13:35:48 -06:00
Martin Braun
941140b957 docs: Several minor manual improvements
- Remove documentation of skip_dram, skip_ddc, skip_duc, which are all
  obsolete since UHD 4
- Properly document serialize_init
- Add a table of valid args for X310 as with other devices
2021-11-30 13:35:48 -06:00
Wade Fife
90713dc39d examples: Use cmul for gain block in-tree IP example 2021-11-30 13:35:48 -06:00
Martin Braun
73675f0c61 rfnoc: mgmt_portal: Fix order of validity checks
The order must:
- Check transaction has the right number of hops, then read hop
- Check hop has the right number of operations (at least 2), then read
  those ops
- Check the ops have the correct opcodes

The code was doing checks in the wrong order. Thanks to Github user
johnwstanford for pointing this out.
2021-11-30 13:35:48 -06:00
Martin Braun
329b238ef2 tests: Fix rfnoc_graph mock nodes stop-stream command
Thanks to Github user johnwstanford for pointing this out.
2021-11-30 13:35:48 -06:00
Martin Braun
fd8be751ac tools: Fix rfnoc dissector build
The recent removal of cruft in 78336d4 caused an implicit include to be
missing from this dissector, causing it to no longer compile. The
include is added to the dissector explicitly now.
2021-11-30 13:35:48 -06:00
michael-west
1def887e4c B200: Re-sync times
The times on the device can glitch if either the tick rate changes or
the number of active chains changes.  This throws off the time if the
user gets streamers, changes the sample rate, or changes the tick rate
after synchronizing the time.  This change re-synchronizes the times
automatically in those cases.

Signed-off-by: michael-west <michael.west@ettus.com>
2021-11-30 13:35:38 -06:00
Wade Fife
fff0318731 python: multi_usrp: Add set_rx_spp() 2021-11-30 13:24:14 -06:00
Lane Kolbly
e7b5db8fd4 doc: x4xx: Document configuring eth0 static IP 2021-11-30 13:24:05 -06:00
Martin Braun
a629ce3a46 mpmd: Increase UHD-side MTU cap for 10 GbE and 1 GbE
This gets closer to what our hardware can actually support. See the
comments for further explanations.

This has the side-effect of patching an issue on X410 (using 200 MHz
images) where garbage samples would get injected (one per packet). It
is not, however, the final fix for that problem.
2021-11-30 13:23:54 -06:00
Martin Braun
2788259ca9 docs: Collect all RFNoC block controllers in a module in the manual
This lets Doxygen create a page in the UHD manual that lists all RFNoC
block controllers. It will be accessible under Manual -> Modules ->
RFNoC -> RFNoC Blocks shipped with UHD.
2021-11-30 13:23:48 -06:00
Martin Braun
9f666e22c4 rfnoc: blocks: Minor cleanup (whitespace, typos) 2021-11-30 13:23:40 -06:00
Wade Fife
06a9ded7c0 examples: Test all variants in gain testbench 2021-11-08 15:48:22 -06:00
Wade Fife
16b6c757fe examples: Make IQ order clear in gain RFNoC block 2021-11-08 15:48:22 -06:00
Lane Kolbly
4360e86945 host: python: Return mb_controller with reference_internal 2021-11-08 15:48:22 -06:00
Lane Kolbly
a4927a73fa mpm: x4xx: Allow GPIO0 and GPIO1 as port names 2021-11-08 15:48:22 -06:00
Wade Fife
756c0d8aef fpga: rfnoc: Add RFNoC CHDR resize module 2021-11-08 15:48:22 -06:00
Wade Fife
12a9122a6f fpga: rfnoc: Add CHDR management util functions
Add missing chdr_mgmt_*() and enum_to_chdr_w() functions.
2021-11-08 15:48:22 -06:00
Lane Kolbly
19dd9ecacb fixup! mpm: x4xx: add DIO GPIO API configuration methods 2021-11-08 15:48:22 -06:00
Dhiren Wijesinghe
e46db24697 mpm: x4xx: add DIO GPIO API configuration methods
These methods allow for reconfiguration of GPIO masters for x4xx.
The method names are get_gpio_banks, get_gpio_srcs, get_gpio_src,
and set_gpio_src.
2021-11-08 15:48:22 -06:00