Martin Braun
be7e72ed1d
mpm: mg: Enable user EEPROM data read/write
2017-12-22 15:04:02 -08:00
Trung N Tran
832e9fc794
mpm: mg: Specify I2C parents for GPIO devices
...
The Magnesium daughterboards have GPIO port expanders, but both have the
same udev label. In order to specify which port expander to use, we pass
in the parent udev I2c device.
2017-12-22 15:04:02 -08:00
Martin Braun
c8094c0e51
mpm: mg: Specify the required overlay for FPGA auto-loading
2017-12-22 15:04:02 -08:00
Martin Braun
d601fd03d5
mpm: Properly populate device_info dict for dboard classes
...
Prior to this commit, device_info was always an empty dictionary on all
dboard classes. The device_info dict is now auto-populated from the
EEPROM contents, if any were provided.
Dboard classes can still opt to amend that dictionary in specific class
implementations.
Signed-off-by: Martin Braun <martin.braun@ettus.com>
2017-12-22 15:04:02 -08:00
Martin Braun
cea45dda8f
mpm: Add mboard EEPROM support
...
MPMD binds a property for the mboard EEPROM to the appropriate RPC
calls. PeriphManager now provides default implementations for an mboard
EEPROM.
2017-12-22 15:04:02 -08:00
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