Commit graph

8901 commits

Author SHA1 Message Date
Cristina Fuentes
2e64cb1b28 multi_usrp: Add get_mb_controller() API call 2020-09-24 15:16:45 -05:00
Lars Amsel
bc20747808 cal: sync log output between file system and resource data
To make the debug output of the database more readable
the has_cal_data lookup for RC data prints the file that
is looked up similar to the lookup for file system.
2020-09-22 14:35:41 -05:00
Andrew Moch
6cd9662e2b fpga: lib: Fix 10 GbE cut-through mode
When operating in cut-through mode the hold off from the MAC was not
applying back pressure, so when the TX interface filled up, data was
dropped. This bug was introduced when cut-through was added, and does
not impact the original implementation.
2020-09-16 17:23:23 -05:00
Max Köhler
b067b2af79 fpga: lib: add generic to disable bitq engine tri-stating 2020-09-16 14:24:16 -05:00
michael-west
cf570707a2 package: Fix Python components
Update dependencies from python to python3.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-13 20:03:49 -07:00
michael-west
90ce6062b6 Prepare branch for release
- Update CHANGELOG
- Update debian files

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-13 12:14:04 -07:00
michael-west
7c02eb0dd3 Examples: Fix install paths in OOT RFNoC example
- Add missing "uhd/" subdirectory.
- Update install path for YAML file.
- Fix include directories and link libraries for init_gain_block.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-13 09:48:11 -07:00
michael-west
01e9f2855b E3xx: Add retry to loopback_self_test
The loopback test sometimes fails.  It was found that it would pass on a
retry.  The root cause of the failure is unknown at this time, but the
retry allows the test to pass.  This is intended as a temporary patch
until the root cause of the failure can be identified.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-11 23:39:58 -07:00
Martin Braun
22593f490d tests: Fix build issue with Boost 1.67
Boost 1.67 will fail to build some tests that include mock_transport.hpp
if an additional include is missing.
2020-09-11 00:47:35 -07:00
Wade Fife
aaf69cb343 docs: Add new CHDR format to transports 2020-09-11 00:44:25 -07:00
Wade Fife
e86bfa1ba5 docs: Updated register maps for UHD 4.0
Updates e3xx and n3xx register map documentation.

- Add new RFNoC registers
- Remove depreicated RFNoC registers
- Add other missing registers
- Correct formatting
2020-09-11 00:44:25 -07:00
Wade Fife
830455fae5 fpga: docs: Update user manual for UHD 4.0 2020-09-11 00:44:25 -07:00
mattprost
a25f930627 docs: New mender commands for Zeus filesystems
Signed-off-by: mattprost <matt.prost@ni.com>
2020-09-09 17:22:58 -07:00
Wade Fife
bbd43b16e1 fpga: e31x: Change image file to e310_rfnoc_image_core
This renames e31x_rfnoc_image_core.* to e310_rfnoc_image_core.*. This
makes the naming consistent with the rest of the build process (which
uses "e310" for all variants of e31x) and fixes an issue in which the
wrong file name was used by rfnoc_image_builder.
2020-09-09 10:18:34 -07:00
RobertWalstab
c44eeaaf31 doc: add section about network mode on E3xx devices 2020-09-09 10:13:16 -07:00
michael-west
2655b0aa4a images: Update manifest
- Update FPGA images for X3xx, N3xx, E3xx
- Prepare paths for N3xx and E3xx filesystems

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-06 09:57:09 -07:00
michael-west
413ebee612 E320: Revert addition of Replay block
The DMA FIFO is needed for DDR3 BIST, so it is being restored for now.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-04 15:45:51 -07:00
Steven Koo
be53058a47 mpm: e31x: Accept FF terminated strings in eeprom
Older revisions of the e31x used FF terminated strings in the EEPROM.
The eeprom implementation didn't take this into account and would
fail on ascii conversion. This change resolves mpm bring up on the
older revisions by replacing FF with null. This didn't affect newer
revisions because they used null terminated strings.

Signed-off-by: Steven Koo <steven.koo@ni.com>
2020-09-04 11:38:27 -07:00
michael-west
ab9f4eab72 lib: Remove recursive locks in apply_corrections
There were locks in the apply_tx/rx_fe_corrections() methods that were
acquired before calling methods that re-acquired the locks.  The mutexes
were not recursive, so it caused applications to lock up.  The locks
are unnecessary in the top level methods, so they are being removed.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-09-04 08:48:25 -07:00
Aaron Rossetto
bf39ce1110 images: Update manifest 2020-09-03 22:28:43 -05:00
Aaron Rossetto
8aedc75abc python: Add peek/poke bindings to noc_block_base 2020-09-03 22:17:02 -05:00
Steven Koo
21bf14cb99 rfnoc: replay: Update packet size on mtu update
Replay block would previously fail output on low mtu links because it
was creating packets based on the default contruction mtu of 8192.
This change will update the packet size when mtu gets updated.
This also removes a warning for large packet sizes because the replay
block uses a maximum packet size property. The block should be
free to coerce down based on mtu limitations.

Signed-off-by: Steven Koo <steven.koo@ni.com>
2020-09-03 16:25:24 -05:00
Aaron Rossetto
7e2fa6feb6 fpga: Added AA image mappings to N320 2020-09-03 15:46:01 -05:00
mattprost
437381bd2c fpga: Add Replay Block to RFNoC Core Image
Add the Replay RFNoC block to the RFNoC core image for x300, x310, n300,
n310, n320/n321, and e320. The Replay block is contained within its own
static connection, so previous default behavior is still supported.

Signed-off-by: mattprost <matt.prost@ni.com>
2020-09-03 15:26:33 -05:00
Wade Fife
8f09caaa06 fpga: Update DRAM IO signatures
This updates the IO signatures so that all devices and RFNoC blocks use
the same IO signature for the DRAM. This is needed because the IO
signatures must match between the RFNoC blocks and the devices. This
means that some devices have extra bits in the IO signature for the
address, but the extra bits will simply be ignored.
2020-09-03 15:26:33 -05:00
mattprost
d80d56114a twinrx: Bypass adf535x feedback divider
Bypass the LO1 feedback divider if it is not required. Some TwinRX units
have seen issues when tuning to frequencies between 3.5GHz and 5.1GHz
while following that data path.

Signed-off-by: mattprost <matt.prost@ni.com>
2020-09-03 15:02:05 -05:00
Wade Fife
148a2c5ee6 rfnoc: Set null source/sink block initial state
This gives the source generator some valid initial values in the Null
Source/Sink RFNoC block.
2020-09-03 15:01:34 -05:00
Aaron Rossetto
6024111d4b docs: Add DPDK link detection section 2020-09-03 15:01:12 -05:00
Aaron Rossetto
eada49e4d5 dpdk: Improve link status detection
This change improves the DPDK link status detection algorithm in the
following ways:

- The status of the links are checked at an interval of 250 ms. If all
  links report as being up, the driver proceeds.
- If any of the DPDK links has not reported as being up by the end of
  the link status detection timeout (1000 ms by default), the algorithm
  throws a runtime error rather than proceeds with one or more down
  links.
- Users may override the default link status detection timeout by
  passing dpdk_link_timeout=N, where N is the desired timeout in
  milliseconds, either via device arguments or in the UHD configuration
  file.
2020-09-03 15:01:12 -05:00
Aaron Rossetto
61e10fc6b6 docs: Add Windows-specific UHD Python module notes 2020-09-03 11:49:12 -05:00
Steven Koo
6d414a4f22 x300,mpmd: Increase recv frames for dpdk streaming
With the default 32 frames, high rate DPDK streaming would overrun or
drop samples. This defaults num_recv_frames to 512 for DPDK, which has
shown to resolve these issues.

Signed-off-by: Steven Koo <steven.koo@ni.com>
2020-09-03 11:44:06 -05:00
Aaron Rossetto
73421ba19d docs: Add note about compiling on Ubuntu 20.04 2020-09-03 11:43:04 -05:00
ettus
5e7c0e61a8 rfnoc: replay: Add support for 32-bit memory address widths
Increases the supported memory sizes in software to 2^32 and beyond.

Signed-off-by: mattprost <matt.prost@ni.com>
2020-09-03 09:40:34 -05:00
mattprost
3d5d136534 mpm: Return 10 Gbs link speed on failure
The sysfs call used to determine link speed occasionally will fail and
return -1. In order to mitigate side effects from this behavior, return
10 Gbs link speed instead of 1 Gbs. This mitigates problems that occur
when this issue is seen on 10GbE ports. This approach was elected over
returning -1 to be handled on the host side in order to avoid breaking
mpm compatibility.

Signed-off-by: ettus <matt.prost@ni.com>
2020-09-01 15:19:30 -05:00
Wade Fife
97cb396297 fpga: sim: chdr_stream_endpoint_tb improvements
- Adds test coverage for stream command and status packets
- Cleans up report output during simulation
- Stops clocks at the end of simulation, so chdr_stream_endpoint_tb can
  be run directly instead of just chdr_stream_endpoint_all_tb
2020-08-31 08:16:43 -05:00
Wade Fife
ccf5d1e0a0 fpga: sim: Fix stream command and status models
This updates PkgChdrBfm to correct some errors when modeling stream
command and stream status packets.

- Fix behavior when CHDR_W = 512
- Fix assertions in read_ctrl()
2020-08-31 08:16:43 -05:00
Wade Fife
c6bb9924e5 fpga: n3xx: Update AXI interconnect address range
This change allows the entire 2 GiB address space to be accessed on
each memory port.
2020-08-28 15:07:38 -05:00
Wade Fife
d352f5a9c3 fpga: e320: Update AXI interconnect address range
This change allows the entire 2 GiB address space to be accessed on
each memory port.
2020-08-28 15:07:38 -05:00
Wade Fife
7c849afec4 fpga: rfnoc: Update CHDR stream INIT command
This changes the behavior of the stream command with the INIT OpCode
such that sending the command with 0 for the values causes no flow
control stream status packets to be sent in response to incoming data.
2020-08-28 15:02:41 -05:00
Wade Fife
00f683c914 fpga: lib: Fix lint warnings
Fixes various synthesis/simulation warnings that were being generated
due to incorrectly sized constants.
2020-08-28 15:02:41 -05:00
Aaron Rossetto
c68977cffa cmake: Use relative path to Python lib location for Windows installer 2020-08-28 14:34:32 -05:00
Steven Koo
da1aeaeccc rfnoc: enable SEPs with connect_through_blocks
Calling on connect with SEPs in the path is not supported. This change
enables connect_through_blocks to find SEPs in the connection chain
and link the src and dest blocks directly.

Signed-off-by: Steven Koo <steven.koo@ni.com>
2020-08-28 12:28:08 -05:00
Aaron Rossetto
03e1b13d3d rfnoc: Exit disconnect() early if nodes not in node map 2020-08-28 12:10:35 -05:00
michael-west
49f230a8a3 utils: b2xx_fx3_utils: Add unload-bootloader
Added unload-bootloader option to cleanly unload a previously loaded
bootloader image.  It properly moves the VID, PID, and EEPROM data.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-08-25 07:28:22 -05:00
michael-west
f405c24bc6 firmware: b2xx: Update to newer Cypress FX3 SDK
- Updated README with instructions on how to build using new SDK
(1.3.4 as of this change)
- Updated makefiles
- Updated memory map patch

Signed-off-by: michael-west <michael.west@ettus.com>
2020-08-25 07:28:22 -05:00
michael-west
0f52366533 B2xx: firmware: Fix address for serial number
The address for the serial number was off by 2 bytes, causing a bad
value in the USB descriptor.  This only occurred if the bootloader
image was loaded on the device.

Signed-off-by: michael-west <michael.west@ettus.com>
2020-08-25 07:11:10 -05:00
Martin Braun
0d273bfe0c tests: fbs test: Fix issues around missing git
- update_fbs.py would use git directly, instead of the requested git
  executable
- There are other corner cases for the git executable detection, which
  are now all captured under a more general exception type

Credit to Christopher Friedt for pointing out the original issue.
2020-08-25 07:10:53 -05:00
Wade Fife
db0d2dddcc fpga: rfnoc: Remove deprecated files 2020-08-23 13:52:26 -05:00
Wade Fife
1239c35ce6 fpga: Update coding guidelines
- Update recommended header
- Update module examples
- Add file/naming guidelines for modules
- Add default_nettype recommendation
- Add guidelines for generate statements
- Recommend all caps for constants
- Misc typos and adjustments
2020-08-20 17:55:28 -05:00
Aaron Rossetto
4c8ba57752 Update CHANGELOG 2020-08-19 19:30:58 -05:00