diff options
author | Daniel Jepson <daniel.jepson@ni.com> | 2017-05-30 18:16:37 -0700 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2017-12-22 15:03:58 -0800 |
commit | a233877f6554fa4d19dfcc4105e904414ea2ad1c (patch) | |
tree | 0ac6e4da0e5df8266d844af4251680e583b84b51 /mpm/python/usrp_mpm/periph_manager/n310.py | |
parent | 39f5a3852c6a782c0cd0774d28d2f49412b9ee16 (diff) | |
download | uhd-a233877f6554fa4d19dfcc4105e904414ea2ad1c.tar.gz uhd-a233877f6554fa4d19dfcc4105e904414ea2ad1c.tar.bz2 uhd-a233877f6554fa4d19dfcc4105e904414ea2ad1c.zip |
mpm/eiscat: Updated bringup procedure for dual-synched dboards
Diffstat (limited to 'mpm/python/usrp_mpm/periph_manager/n310.py')
-rw-r--r-- | mpm/python/usrp_mpm/periph_manager/n310.py | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/mpm/python/usrp_mpm/periph_manager/n310.py b/mpm/python/usrp_mpm/periph_manager/n310.py index 84a55c9d2..b1c4840d7 100644 --- a/mpm/python/usrp_mpm/periph_manager/n310.py +++ b/mpm/python/usrp_mpm/periph_manager/n310.py @@ -18,15 +18,14 @@ N310 implementation module """ from __future__ import print_function -import struct -import netaddr +import time from six import iteritems from .base import PeriphManagerBase from ..net import get_iface_addrs from ..net import byte_to_mac from ..net import get_mac_addr from ..mpmtypes import SID -from ..uio import UIO +from usrp_mpm.uio import UIO from ..sysfs_gpio import SysFSGPIO from ..ethtable import EthDispatcherTable from .. import libpyusrp_periphs as lib @@ -134,6 +133,8 @@ class n310(PeriphManagerBase): xbar.write("0x2") # if header.get("dataversion", 0) == 1: self.log.info("mboard info: {}".format(self.mboard_info)) + # Define some attributes so PyLint stays quiet + self._eth_dispatchers = None def init(self, args): """ @@ -147,6 +148,20 @@ class n310(PeriphManagerBase): } for ifname, table in iteritems(self._eth_dispatchers): table.set_ipv4_addr(self._chdr_interfaces[ifname]['ip_addr']) + self.log.warning("Running a custom EISCAT-specific sequence to bring " \ + "up 2 daughterboards without requiring UHD support. " \ + "This effectively disables Magnesium and must be " \ + "replaced before merging back into n3xx-master." + ) + self.dboards[0].send_sysref() + for dboard in self.dboards: + dboard.init_adcs_and_deframers() + self.dboards[0].send_sysref() + time.sleep(0.5) + for dboard in self.dboards: + dboard.check_deframer_status() + assert dboard.initialized + def _allocate_sid(self, sender_addr, port, sid, xbar_src_addr, xbar_src_port): """ |