aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/python/usrp_mpm/xports
Commit message (Collapse)AuthorAgeFilesLines
* mpm: xportmgr_udp: Match DNAT arguments to manpageMartin Braun2022-02-211-3/+5
| | | | | | | Change the --to argument to --to-destination. Both seem to work, but the latter is what is listed in iptables-extensions(8). What's confusing is that `--to` also exists in another context (in the `string` match extension).
* sim: Lay Groundwork for SimulatorSamuel O'Brien2020-10-071-6/+8
| | | | | | | | | | | | | | | At this point, only about half of the mpm methods work on the simulator over the mpm shell, and it hasn't been tested with uhd at all. If you want to give it a try, first install all of the python dependencies of mpm (The simulator doesn't require libusrp or any of the C++ deps). In addition, running mpm on a desktop machine requires the python lib netifaces. Next, make an /mpm/build directory and open it. Run `cmake .. -DMPM_DEVICE=sim`, then `make`. Finally, run `python3 python/usrp_hwd.py`. You should be able to open another terminal and run `mpm/tools/mpm_shell.py localhost` to connect to the mpm server. Signed-off-by: Samuel O'Brien <sam.obrien@ni.com>
* mpm: exclude internal nic for network hostsSteven Koo2020-08-191-4/+35
| | | | | | | | | | Sometimes the internal nic address is routable in network mode. This causes mpm find to incorrectly set it as the addr. This commit removes the internal interfaces from the routable list. This also sets the forwarding interface as the last resort. mpm will prefer the SFP ports since they can be higher throughput. Signed-off-by: Steven Koo <steven.koo@ni.com>
* mpm: Reenable forward interfaces for remote hostsSteven Koo2020-08-041-2/+1
| | | | | The forward interfaces are able to forward CHDR packets with MPM iptables routing. This reenables forward interfaces as a CHDR option.
* mpm: Default virtual NIC CHDR IP selectionSteven Koo2020-07-301-1/+7
| | | | | This change adds detection for setting the correct internal fpga CHDR IP address when using embedded mode.
* mpm: Don't index empty forwarding interface listAaron Rossetto2020-07-241-0/+1
| | | | | | If no internal interfaces are found to which to forward CHDR packets, return after printing the warning instead of attempting to index the empty list and generating an exception.
* uhd: remove liberioRobertWalstab2020-07-203-76/+0
|
* mpm: support forwarding CHDR packetsRobertWalstab2020-07-161-3/+73
|
* mpm,mpmd: Add iface type and mtu info for UDP linksAlex Williams2020-07-161-1/+3
| | | | | | This changes MTU handling for the "internal" UDP type. Because MPM echo packets will not be returned for internal NICs, use the iface's programmed MTU instead.
* mpm: Add support for internal Ethernet interfaceAndrew Lynch2020-07-161-0/+5
|
* mpm: Detect number of liberio channelsAlex Williams2020-07-161-1/+13
| | | | | Instead of using hard-coded values, detect the number of liberio channels, and only offer liberio links if they exist.
* mpm: Fix various Pylint issuesMartin Braun2020-07-091-3/+1
| | | | | | | | No functional changes. Fixes for things that PyLint complains about, but are safe to change anyway, as well as a minor improvement to a docstring that referenced non-existant args. This touches files that are mpm.conf-related.
* mpm: Fix calculation of link_rate for UDP xportsAaron Rossetto2019-11-261-1/+1
|
* x300/mpmd: Port all RFNoC devices to the new RFNoC frameworkMartin Braun2019-11-262-240/+47
| | | | | | | Co-Authored-By: Alex Williams <alex.williams@ni.com> Co-Authored-By: Sugandha Gupta <sugandha.gupta@ettus.com> Co-Authored-By: Brent Stapleton <brent.stapleton@ettus.com> Co-Authored-By: Ciro Nishiguchi <ciro.nishiguchi@ni.com>
* mpm: Add option for muxed data stream for liberio transportSugandha Gupta2019-05-011-3/+9
| | | | | | 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
* mpm: python: Move from Boost.Python to PyBind11Martin Braun2019-04-022-2/+2
|
* uhd: mpm: update all license header w/ "-or-later"Brent Stapleton2019-03-081-1/+1
| | | | Updating all SPDX license identifiers to include "-or-later"
* mpm: xport: add commit_xport docstringBrent Stapleton2019-02-111-1/+4
|
* mpm: Parameterize max UDP link allocationAlex Williams2019-01-251-1/+2
| | | | | | | Add an argument to the UDP xport_mgr to adjust the xport sorting. This enables Rhodium to use a different limit from Magnesium. Previously, the sorting method would overload a link with both of Rhodium's higher-rate streams.
* mpm: xportmgr_udp: Add bridge mode supportSugandha Gupta2019-01-171-18/+50
|
* cmake: Update coding style to use lowercase commandsMartin Braun2018-11-141-4/+4
| | | | | | | | | | | | | | | | | Also updates our coding style file. Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code (with GNU compliant sed): cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done > convert.sed \ && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' \ '*CMakeLists.txt' | xargs -0 gsed -i -f convert.sed && rm convert.sed (Make sure the backslashes don't get mangled!)
* mpm: add link_speed xport_infoTrung Tran2018-09-131-0/+1
|
* mpm: xportmgr_udp: Catch inconsistent Ethernet device detectionsMartin Braun2018-06-081-7/+26
| | | | | | | This manager first detects all valid Ethernet devices. The checks for validity happen across multiple calls in a non-atomic fashion, so it's possible to end up with inconsistent results. To avoid such issues, we filter results without talking to the network stack as a final pass.
* mpm: xportmgr_udp: Assign xports to previously used SFPsMartin Braun2018-04-301-1/+29
| | | | | | This changes the sorting algorithm for the xport<->SFP mapping. When multiple SFPs are used, this sorting will avoid a criss-cross mapping (e.g., mapping ports 0 and 1 of 0/Radio_0 to different SFPs).
* mpm: Demote some log messagesMartin Braun2018-03-061-1/+1
| | | | | | The log output at level 'INFO' was pretty cluttered. This cleans up the log messages at the higher levels. In some cases, log message typos or capitalizations were also fixed.
* mpm: Update all license headersMartin Braun2018-02-193-6/+6
| | | | | - Fix typo in company name (missing 'a') - Updated SPDX license identifier to version 3.0
* mpm: n310: Return CHDR addresses as part of device_infoMartin Braun2018-02-072-0/+29
| | | | Reviewed-by: Brent Stapleton <brent.stapleton@ettus.com>
* mpm: xports: Sort requested transport options by QoSMartin Braun2017-12-221-6/+6
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpm: udp xport: Bind SID addr 0 and 1 to respective SFP portsMartin Braun2017-12-221-2/+11
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpm: udp xport: Increment TX/RX allocations for streamersMartin Braun2017-12-221-4/+22
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpm: xports: Amend protocol for request/commit xport, add allocationMartin Braun2017-12-221-1/+2
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpmd: Refactor MPM transport architecture, use managersMartin Braun2017-12-221-2/+9
| | | | | | | | | | | | | | This splits up the transport code in mpmd_impl across multiple classes to properly leverage the request_xport/commit_xport API in MPM. Different types of transport (UDP, liberio) use their own distinct classes, which are generated dynamically on request. This is a true refactoring despite the large amount of changes; there are no functional differences. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com> Reviewed-By: Trung Tran <trung.tran@ettus.com> Reviewed-By: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* mpm: xport: Let UDP manager re-enumerate available CHDR ifaces on init()Martin Braun2017-12-221-11/+23
| | | | | | This will enumerate CHDR interfaces as late as possible, so that the user changing the IP address will not affect operations. Note that IP is considered static during a UHD session.
* mpm: Harmonize imports, tidy + sort modulesMartin Braun2017-12-222-3/+3
| | | | | | | | - Moved nijesdcore to cores/ - Moved udev, net, dtoverlay, uio to sys_utils/ - Made all imports non-relative (except in __init__.py files) - Removed some unnecessary imports - Reordered some imports for Python conventions
* mpm: Factor out xport managers as own objectsMartin Braun2017-12-224-0/+304
- Move XportMgr classes out of n310.py - Subclass them there and apply N310-specific settings - Remove chdr_interfaces option from PeriphManagerBase