Martin Braun
1d0f1aa99d
n3xx bist: Properly sequence GPSDO test
...
It now does:
- Power on GPS
- Wait for WARMUP to go low
- Wait for LOCKOK, with timeout
- Read the TPV response and return it
2017-12-22 15:04:00 -08:00
Martin Braun
fa07fd53f0
mpm: n3xx: Fix TCA GPIO read function
...
Used to always return None, now returns the actual pin value.
2017-12-22 15:04:00 -08:00
Martin Braun
a2f0269a1e
mpm: n3xx: Change default state for TCA GPIOs
...
This makes the GPS reset go high by default (i.e., takes it out of reset
by default) and the init survey pin go high (i.e., take it out of survey
mode).
2017-12-22 15:04:00 -08:00
Martin Braun
5897780896
n3xx bist: Added LV compat mode
2017-12-22 15:04:00 -08:00
Martin Braun
f1ad20cfe1
n3xx bist: Minor refactoring of GPIO code
2017-12-22 15:04:00 -08:00
Martin Braun
e3b38be233
n3xx bist: Better pass/fail conditions, flattened results
...
To placate fussy JSON consumers, we now avoid nested dictionaries. The
dry-run results now return a more accurate representation of the N310
system responses.
2017-12-22 15:04:00 -08:00
Trung N Tran
c07af7edfe
n310: enable CLK-MGT156MHz at init n310 call
2017-12-22 15:04:00 -08:00
Trung N Tran
e68cda3b75
n310: add init value for sysfs_gpio
2017-12-22 15:04:00 -08:00
Martin Braun
8063697d68
mpm: Check rpc server has matching lock release/acquires
2017-12-22 15:04:00 -08:00
Martin Braun
7cd6758336
n310/eiscat: Removed 20 MHz as a valid ref clock frequency
2017-12-22 15:04:00 -08:00
Derek Kozel
e5a7be4453
eiscat: Change sync pin configuration to switch to CD in case of error
2017-12-22 15:04:00 -08:00
Martin Braun
053e6b5aee
n3xx mpm: Refactored peripheral init code
2017-12-22 15:04:00 -08:00
Martin Braun
90f608fa75
n3xx mpm: Enable more subcomponents through API calls
2017-12-22 15:04:00 -08:00
Martin Braun
eb2b11524b
n3xx mpm: Set call for TCA6424 pins gets value arg
2017-12-22 15:04:00 -08:00
Martin Braun
5f99240bd2
mpm: Made Python3 the default interpreter for all N3xx-related executables
2017-12-22 15:04:00 -08:00
Martin Braun
e20c0adb05
mpm aurora: Fixed undeclared variable issue
2017-12-22 15:04:00 -08:00
Trung N Tran
a745877cc9
n310: gpio bist
2017-12-22 15:04:00 -08:00
Trung N Tran
1db37316eb
n3xx: enable all pins on tca6424
2017-12-22 15:04:00 -08:00
Martin Braun
fad37e577d
mpm: Clarified use of get_logger() call
2017-12-22 15:04:00 -08:00
Martin Braun
8b4bc49764
n3xx bist: Added --verbose and --debug options
2017-12-22 15:04:00 -08:00
Martin Braun
ef6382c6ab
n3xx bist: Added SFP loopback tests
2017-12-22 15:04:00 -08:00
Martin Braun
39bd5b1bad
mpm: Minor fixes to aurora_control
...
- Slaves are properly initialized/deinitialized
- Return values from BISTs return more info
- Minor formatting fixes
2017-12-22 15:04:00 -08:00
Martin Braun
3ea3d8a338
mpm/n310: Added Aurora BIST code
2017-12-22 15:04:00 -08:00
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
Mark Meserve
ae21f9b9d3
mpm: fixup for spi and ad937x path changes
2017-12-22 15:03:45 -08:00
Andrej Rode
8ac9014d5c
mpm: CMake cleanup, Python code enhancements
...
- Send user defined data in ping
- Improve rpc_shell, add mpm_debug.py, fix tracebacks in multiprocessing
2017-12-22 15:03:44 -08:00
Martin Braun
6d332e5ca4
mpm: move public includes into include/
2017-12-22 15:03:44 -08:00
Andrej Rode
ef6326a174
mpm: python refactoring
2017-12-22 15:03:44 -08:00
Martin Braun
1a4348038d
Initial commit for N3xx development.
...
- Creates mpm/ subdirectory
- First pass at hardware daemon/MPM
- New code for LMK04828, AD9371
- spidev integration
Contributions by:
Martin Braun <martin.braun@ettus.com>
Derek Kozel <derek.kozel@ettus.com>
Mark Meserve <mark.meserve@ni.com>
Andrej Rode <andrej.rode@ettus.com>
2017-12-22 15:03:44 -08:00