Commit graph

155 commits

Author SHA1 Message Date
Trung N Tran
1bd648833c n3xx: Add CRC check for eeprom read 2017-12-22 15:04:00 -08:00
Martin Braun
7ae94d0ae9 n3xx bist: Make sure error_msg is in every result
Some downstream consumers of n3xx_bist output require the error_msg key
to be in every result, even if no error occurred. The default value is
an empty string.
2017-12-22 15:04:00 -08:00
djepson1
d15b55481d eiscat: Fixing a sequencing issue with channel enables for signal integrity reasons 2017-12-22 15:04:00 -08:00
Martin Braun
3bd01c27a3 mpm/n310: Moved eth dispatcher setup into __init__ 2017-12-22 15:04:00 -08:00
sugandhagupta
0347dc8b4b mpm: fixed mpm rerun issue 2017-12-22 15:04:00 -08:00
Martin Braun
8e1dec25f2 eiscat: Move JESD init and ADC reset to its own function 2017-12-22 15:03:59 -08:00
sugandhagupta
113e425613 n3xx: added args for ethernet crossover path 2017-12-22 15:03:59 -08:00
Martin Braun
e7f7f06b49 mpm: Added eth table preloading capability 2017-12-22 15:03:59 -08:00
Martin Braun
aefbc5b957 n3xx bist: Added both time and date to rtc test, added error_msg common key 2017-12-22 15:03:59 -08:00
Martin Braun
a53976c6ea n3xx bist: Stubbed out all tests, implemented TPM test 2017-12-22 15:03:59 -08:00
Martin Braun
527c4fe470 n3xx bist: Added dry-run version of sfp test 2017-12-22 15:03:59 -08:00
Martin Braun
5c64735057 n3xx bist: Added gpsd test 2017-12-22 15:03:59 -08:00
Martin Braun
666205cf29 n3xx bist: Added dry-run feature, and implemented temp, rtc, and fan tests 2017-12-22 15:03:59 -08:00
Martin Braun
d6dc8377ed eiscat: JESD failure does no longer throw; returns failure 2017-12-22 15:03:59 -08:00
Martin Braun
3c385a4587 mpm: discovery can now be bound to subnet 2017-12-22 15:03:59 -08:00
Martin Braun
d6d4ac861e eiscat: Unset initialized-flag when ref clock freq is changed 2017-12-22 15:03:59 -08:00
Martin Braun
62e2c25107 eiscat: Minor logging update for clock sync 2017-12-22 15:03:59 -08:00
djepson1
07b8682239 mpmd/cores: Removed PPS disable logic from TDC routine and added comments 2017-12-22 15:03:59 -08:00
djepson1
eae3ab9c7f mpmd/cores: Adding TDC range check and removing clock enable/disable logic 2017-12-22 15:03:59 -08:00
Martin Braun
c34a36853e n310: Allow --override-db-pids to skip dbs 2017-12-22 15:03:59 -08:00
Martin Braun
5f803ae32e eiscat: Skip re-initialization of dboards 2017-12-22 15:03:59 -08:00
Martin Braun
b14bc217e9 mpm/mpmd: Dboard info is now stored in mboard info; refactored initialization 2017-12-22 15:03:59 -08:00
Martin Braun
eb4a0cb6eb mpmd/mpm/n310: Added clock and time source APIs 2017-12-22 15:03:59 -08:00
Daniel Jepson
45012fa48c EISCAT: Hard reset ADCs before init, fixed interleaving engine 2017-12-22 15:03:59 -08:00
Martin Braun
40235b8c5a mpm/mpmd: Call init() during UHD session init, not on hwd spawn 2017-12-22 15:03:59 -08:00
Martin Braun
039de2841b mpm/mpmd: Allow SID increment; more fixes for multi-usrp operation 2017-12-22 15:03:59 -08:00
Martin Braun
365c57b356 mpm: Minor logging improvement for LMK04828 classes 2017-12-22 15:03:59 -08:00
Martin Braun
797b61a3fb mpm: RPC servers own methods can no longer be overwritten 2017-12-22 15:03:59 -08:00
Martin Braun
4b9e07629d mpm: Improved token checking in RPC server 2017-12-22 15:03:58 -08:00
Martin Braun
d68c7dfa5a eiscat: Made more functions return status values instead of None/void 2017-12-22 15:03:58 -08:00
Martin Braun
664f471baf mpm: Addition Py3k fixes, all related to string/UTF-8/ascii differences
- Also fixed some error handling in various cases
2017-12-22 15:03:58 -08:00
Martin Braun
1809822893 mpm/mpmd: Further improvements on multi-device operations
- Crossbar local addr is now written during initialization of UHD
  session
- Support for multiple crossbars per device (at least on UHD side)
- Crossbars are now sequentially given a unique address
2017-12-22 15:03:58 -08:00
Martin Braun
3f47aeaf13 mpm/tdc: Re-enable PPS after synchronization procedure is complete 2017-12-22 15:03:58 -08:00
Martin Braun
3c50e39d64 mpm: Removed gratuitous encode(), safer udev lookups
- Udev lookups now just return empty lists when they can't find anything
- Made SPI dev interface factory Py2/3 safe
2017-12-22 15:03:58 -08:00
Martin Braun
6183d9eeaa mpm: Made code Python3-compatible 2017-12-22 15:03:58 -08:00
Martin Braun
34c2fa0bee mpm: Cleaned up CMake, made Python version an option 2017-12-22 15:03:58 -08:00
Martin Braun
dbfc85e097 mpm: Remove numpy dependency 2017-12-22 15:03:58 -08:00
Martin Braun
2bd564ca22 mpm: Replaced xrange with range for better Python future-proofing 2017-12-22 15:03:58 -08:00
Martin Braun
d16d342be2 mpm: Made CMake more future-proof w.r.t. newer Boost and Python 2017-12-22 15:03:58 -08:00
Martin Braun
3aa899e1f5 mpm: udev now sorts EEPROM paths properly (9-0050 before 10-0050) 2017-12-22 15:03:58 -08:00
Martin Braun
34174c98f3 eiscat/mpm: Moved EISCAT full init sequence to UHD 2017-12-22 15:03:58 -08:00
Daniel Jepson
a233877f65 mpm/eiscat: Updated bringup procedure for dual-synched dboards 2017-12-22 15:03:58 -08:00
Martin Braun
39f5a3852c mpm: Added TDC clock sync driver 2017-12-22 15:03:58 -08:00
Daniel Jepson
273b959fd3 mpm/eiscat: Updates to LMK04828 driver 2017-12-22 15:03:58 -08:00
Martin Braun
fc89cd3c42 mpm: Added TDC clock sync driver 2017-12-22 15:03:58 -08:00
Martin Braun
2406def0ac mpm/mpmd: Crossbar info is now polled instead of hardcoded
- Extended base periph manager to provide crossbar info
2017-12-22 15:03:58 -08:00
Martin Braun
5dcaffcd0b mpm: RPC server now provides decorators for no token and no RPC
- Also token length is now variable, and 16 characters
2017-12-22 15:03:58 -08:00
Martin Braun
5edeeef564 mpm/EISCAT: Renamed UIO udev labels, enabled spidevs on both dboards
The UIO labels will require an update to the device tree overlay file.
2017-12-22 15:03:58 -08:00
Martin Braun
1ce038094d mpm: Factored out eeprom code into its own module 2017-12-22 15:03:53 -08:00
Martin Braun
0c0b0595bb mpm: motherboards can now also request overlays, dboard overlay code slightly refactored 2017-12-22 15:03:53 -08:00
Martin Braun
7c9b801906 mpm: Made overlay selection a static method for more flexibility 2017-12-22 15:03:53 -08:00
Martin Braun
5926f1b9d9 mpm: dt overlay handling: Better error handling, fewer FIXMEs 2017-12-22 15:03:53 -08:00
Martin Braun
245b96a777 mpm: Added auto-loading of dboard-specific overlays 2017-12-22 15:03:53 -08:00
Martin Braun
e9a1af171e mpm: Better handling of case where no CHDR interfaces are available 2017-12-22 15:03:53 -08:00
Martin Braun
06afc8eeef mpm: Fixed relative imports 2017-12-22 15:03:53 -08:00
Martin Braun
11977ad25c mpm: hwd can be spawned with clock_source and ext_clock_freq 2017-12-22 15:03:53 -08:00
Martin Braun
3102bf1cee mpm: periphs and n310 use eth table dispatcher now 2017-12-22 15:03:53 -08:00
Martin Braun
82331cb976 mpm: Added more methods to SID 2017-12-22 15:03:53 -08:00
Martin Braun
7cc40f9d12 mpm: Added ethernet dispatcher code for N310 2017-12-22 15:03:53 -08:00
Martin Braun
e2503018da mpm: SIDs are returned to pool after device is uninitialized 2017-12-22 15:03:53 -08:00
Martin Braun
0a9632ad39 mpm: RPC server unitializes a device when claim is lost 2017-12-22 15:03:53 -08:00
Martin Braun
c0a528394d mpm: Guaranteed stringification of mboard_info values 2017-12-22 15:03:53 -08:00
Martin Braun
5a4a78de61 mpm: Factored out common LMK04828 code 2017-12-22 15:03:53 -08:00
Martin Braun
9dee6175da mpm: Moved device and dboard init/deinit to their own methods
Also cleaned up some cruft.
2017-12-22 15:03:53 -08:00
Martin Braun
ca1723c02e eiscat: Enabled Phase DAC SPI
Requires the appropriate overlay.
2017-12-22 15:03:53 -08:00
DanielleB-NI-OOPL
1e7ab6df5a n3xx_bist Documentation
Added comments to individual tests regarding JSON formatting,
descriptions, and required equipment. No functional changes
2017-12-22 15:03:53 -08:00
Martin Braun
b39dafa1ee mpm: Enabled selection of SPI mode 2017-12-22 15:03:53 -08:00
Martin Braun
e6858a61a8 mpm: Moved some SPI setup code to dboard base 2017-12-22 15:03:53 -08:00
Martin Braun
13cd22e867 mpm: Added command line args to usrp_hwd.py 2017-12-22 15:03:53 -08:00
Martin Braun
4efea95324 mpm: Enabled mboard EEPROM readout 2017-12-22 15:03:53 -08:00
Martin Braun
2270a6b1a6 mpm: Fixed python import in discovery module 2017-12-22 15:03:53 -08:00
Martin Braun
b5b1ef2de2 mpm: Various EISCAT fixes 2017-12-22 15:03:53 -08:00
sugandhagupta
6a2a8bb2f7 mpm: fixed port expander connections
- reversed CLK-MAINREF-SEL0 and SEL1
2017-12-22 15:03:52 -08:00
Martin Braun
af35903d17 mpm: Renamed types submodule mpmtypes to avoid import confusion 2017-12-22 15:03:52 -08:00
Mark Meserve
24d3011233 mg: bring up links 2017-12-22 15:03:52 -08:00
Martin Braun
8f9f29dabc mpm: eiscat: Fixed missing parameter in dboard code 2017-12-22 15:03:52 -08:00
Martin Braun
1b27c16dd3 mpm: Updating ref clock frequency will propagate to dboard, changed slot indexing to numbers 2017-12-22 15:03:52 -08:00
Daniel Jepson
ca3a840756 mpm: eiscat: Finalized bring-up of JESD link 2017-12-22 15:03:52 -08:00
Martin Braun
df9ca47ed1 mpm: eiscat: magnesium: Removed C++-only SPI ifaces
- EISCAT is now Python only with the exception of the definition of the
  SPI ifaces
- Magnesium uses a Python-generated SPI iface
- Removed SPI lock from EISCAT dboard
2017-12-22 15:03:52 -08:00
Martin Braun
0c5c2f1834 mpm: n310: Added driver for port expander and ref clock selection 2017-12-22 15:03:52 -08:00
Martin Braun
9e57a7a71a mpm: Added driver for sysfs-based gpios 2017-12-22 15:03:52 -08:00
Martin Braun
2906db7528 mpm: Added more to the EISCAT bringup sequence 2017-12-22 15:03:52 -08:00
Martin Braun
0e7fe25f42 mpm: eiscat: Added first pass at EISCAT dboard driver 2017-12-22 15:03:52 -08:00
Martin Braun
fcf8715eab mpm: Exposed spi regs iface factory to Python 2017-12-22 15:03:52 -08:00
Martin Braun
0920bf97ea mpm: Fixed logging in exit case 2017-12-22 15:03:52 -08:00
Martin Braun
c0fa47a970 n3xx: Moved Mykonos reset to UIO
Note: This requires a new FPGA image, or Mykonos simply won't reset.
2017-12-22 15:03:52 -08:00
Martin Braun
af6d240949 mpm: Improved udev identification of SPI device nodes 2017-12-22 15:03:52 -08:00
Martin Braun
658bdb71d8 mpm: Added more generic UIO lookup 2017-12-22 15:03:52 -08:00
Martin Braun
151ba5fb06 mpm: Major refactoring
- Created clean interfaces for SPI and registers
- Severed most links to UHD
- Added a lockable class which allows exposing mutexes into Python
2017-12-22 15:03:52 -08:00
Martin Braun
60af7b1a1f n3xx: Added bist tool skeleton 2017-12-22 15:03:46 -08:00
Martin Braun
f9a6de45be mpm: Removed exception handling for periph manager import 2017-12-22 15:03:46 -08:00
Martin Braun
0cdf67ad33 mpm: Enabled LMK controls in Python 2017-12-22 15:03:46 -08:00
Martin Braun
1c0cc2120d mpm: Fixed version string for MPM 2017-12-22 15:03:46 -08:00
Martin Braun
27cae33959 mpm: Removed superfluous file 2017-12-22 15:03:45 -08:00
Martin Braun
285f14392b mpm: Moved over to new logging infrastructure
Also currently hardcodes some settings.
2017-12-22 15:03:45 -08:00
Martin Braun
b05f72f339 mpm: Added NI JESD core controller 2017-12-22 15:03:45 -08:00
Derek Kozel
f2f1204ea4 lmk: Update LMK04828 driver with values for Magnesium 2017-12-22 15:03:45 -08:00
Andrej Rode
7f71111988 mpm: comment out functionality to make it work
- add uio udev find routine
 - add debug prints

Signed-off-by: Andrej Rode <andrej.rode@ettus.com>
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
2017-12-22 15:03:45 -08:00
Andrej Rode
6a12add156 mpm: mpm reorganization 2017-12-22 15:03:45 -08:00
Martin Braun
ba4fad345d mpm: Added uio control class 2017-12-22 15:03:45 -08:00