Commit graph

54 commits

Author SHA1 Message Date
djepson1
4e0600b00a mg: Updated JESD204b init seq and documentation.
- Based on feedback from ADI, updated SYSREF sequencing for
    meeting deterministic latency requirements.
  - Changed majority of register addresses in nijesdcore.py to
    constants.
  - Corrected write data to SYSREF_CAPTURE_CONTROL to produce
    the correct SYSREF toggle rate inside the FPGA.

Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
djepson1
6858b05357 mg: Fix debug support for CPLD accesses
Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
djepson1
58e83611f4 mg: Clean up CPLD initialization.
Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
djepson1
ca847bb474 mg: Preliminary clock sync support
Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
djepson1
6bb1e12503 mg: Clean up radio_regs creation
Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
djepson1
ee3f82e454 mg: Updated support for LMK
- add clock shifting
  - add DAC support
  - modify __init__ calls for cleanup

Signed-off-by: djepson1 <daniel.jepson@ni.com>
2017-12-22 15:04:02 -08:00
Martin Braun
e2f8f8e0bd mpm: Added sensor API
- Motherboard sensors are automatically populated into the property
  tree, they can be automatically enumerated and queried
- Daughterboard sensors have an API for querying and enumerating
  sensors, but this commit does not automatically add them to the
  property tree
2017-12-22 15:04:02 -08:00
Daniel Jepson
3b716315fe mpm: Update TDC sync code to make it generic for N dboards 2017-12-22 15:04:01 -08:00
Daniel Jepson
39e7b7fd13 mpm: Added lmk_mg to CMake 2017-12-22 15:04:01 -08:00
DJ Epson
f141f71180 mpm: Streaming-related improvements to Magnesium controls 2017-12-22 15:04:01 -08:00
Mark Meserve
309a2f04e3 mg: General fixes
- Make DB probe-able
- Add RPC client
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
djepson1
d15b55481d eiscat: Fixing a sequencing issue with channel enables for signal integrity reasons 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
Martin Braun
d6dc8377ed eiscat: JESD failure does no longer throw; returns failure 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
Martin Braun
5f803ae32e eiscat: Skip re-initialization of dboards 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
d68c7dfa5a eiscat: Made more functions return status values instead of None/void 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
2bd564ca22 mpm: Replaced xrange with range for better Python future-proofing 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
Daniel Jepson
273b959fd3 mpm/eiscat: Updates to LMK04828 driver 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
7c9b801906 mpm: Made overlay selection a static method for more flexibility 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
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
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
b5b1ef2de2 mpm: Various EISCAT fixes 2017-12-22 15:03:53 -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
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
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