aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/python/usrp_mpm/periph_manager/n310.py
Commit message (Collapse)AuthorAgeFilesLines
* mpm: n310: Fix setting time sourceMartin Braun2017-12-221-2/+4
|
* n3xx: MPM: Add FPGA build timestampAshish Chaudhari2017-12-221-11/+45
| | | | | | - Fixed the interpretation of the git hash Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mpm: n310: Add temp and fan sensorsMartin Braun2017-12-221-0/+43
|
* n310: Move SID framing all the way to n310.pyMartin Braun2017-12-221-3/+10
| | | | | | | MPM will now no longer keep a SID framer variable. Reviewed-by: Trung Tran <trung.tran@ettus.com> Reviewed-by: Brent Stapleton <brent.stapleton@ettus.com>
* mpm: n310: Set default clock source to 'internal'Martin Braun2017-12-221-1/+1
|
* mpm: udp xport: Bind SID addr 0 and 1 to respective SFP portsMartin Braun2017-12-221-0/+4
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpm: adding GPS time sensorBrent Stapleton2017-12-221-0/+30
| | | | | | Adding GPS time sensor to MPM, and its respective getter. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: n310: Support RevEMartin Braun2017-12-221-1/+1
| | | | | | Bump the max supported rev accordingly. Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mpm: Harmonize all license headerMartin Braun2017-12-221-13/+2
| | | | Now uses SPDX headers everywhere.
* mpm: n310: add fpga compat number checkTrung N Tran2017-12-221-0/+34
| | | | | | Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com> Reviewed-By: Sugandha Gupta <sugandha.gupta@ettus.com> Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: UIOs now open only when necessaryBrent Stapleton2017-12-221-29/+29
| | | | | | | Refactoring to use the C++-based UIO objects. The Liberio and Ethernet objects now open the UIO before using it, and close it once done. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: adding GPS sensor functionsBrent Stapleton2017-12-221-0/+44
| | | | | | Adding GPS TPV and SKY sensors to MPM, and their respective getters. Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: Harmonize imports, tidy + sort modulesMartin Braun2017-12-221-9/+5
| | | | | | | | - Moved nijesdcore to cores/ - Moved udev, net, dtoverlay, uio to sys_utils/ - Made all imports non-relative (except in __init__.py files) - Removed some unnecessary imports - Reordered some imports for Python conventions
* mpm: add all time_source options and complete MB clk controlDaniel Jepson2017-12-221-10/+96
| | | | | | | | - complete time_source options to match updates to fpga registers - add methods for each of the bitfields in the clock control register - add init sequences for the meas_clk MMCM and PPS output Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: added uio for motherboard regssugandhagupta2017-12-221-7/+47
| | | | Reviewed-By: Martin Braun <martin.braun@ettus.com>
* mpm: Factor out xport managers as own objectsMartin Braun2017-12-221-228/+21
| | | | | | - Move XportMgr classes out of n310.py - Subclass them there and apply N310-specific settings - Remove chdr_interfaces option from PeriphManagerBase
* mpm: n310: Compile .dts files to .dtbo on updateMartin Braun2017-12-221-7/+31
| | | | Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
* mpm: Reset periph manager on updateBrent Stapleton2017-12-221-0/+16
| | | | | | | | | | Upon updating certain components (the FPGA, for example), the Peripheral Manager is restarted, and the overlay is reapplied. In order to facilitate this, the RPC server intercepts and handles the update_component function. Tested on the RJ45 ethernet connection. It probably won't work as well if the SFP connection goes down when the overlay is removed.
* mpm: PeriphManager decides and applies overlayBrent Stapleton2017-12-221-2/+14
| | | | | | | Previously, the daughterboard requested an overlay file based on SFP preference using magic values. This commit moves the decision making to the peripheral manager, which uses our singular name (ie 'n3xx' for the N310).
* fpga load: Components file paths in component dictBrent Stapleton2017-12-221-9/+12
| | | | | | Paths to the component files is now stored in the updateable_components dictionary. This makes them accessible in the base class, and generally cleans up the member variables.
* fpga load: Atomic updating of multiple componentsBrent Stapleton2017-12-221-0/+17
| | | | | | | - The MPM function update_component now accepts multiple components to be updated in one RPC call. - Updated the property tree and image loader to match this change. - Also added DTS loading to the image loader.
* mpm: n310: Remove unused imports (linter warnings)Martin Braun2017-12-221-2/+1
|
* n3xx: add support for 122.88 and 153.6 MHz sample clock ratesMartin Braun2017-12-221-2/+18
| | | | | | - re-wrote portions of the LMK driver for flexible rates and configuration - tweaked TDC driver for compatibility and ease of debugging - updated comments and log statements throughout for uniformity
* mpm: n310: Made n310.__init__() more exception-safeMartin Braun2017-12-221-1/+15
|
* mpm: discovery returns 'product' informationBrent Stapleton2017-12-221-1/+3
| | | | | - Added 'product' information to N310 - MPM discovery checks for 'product' field
* mpm: n310: Allow Ethernet connections to both SFPsMartin Braun2017-12-221-16/+30
| | | | Reviewed-By: Trung Tran <trung.tran@ettus.com>
* mpm/mpmd: Move to request_xport()/commit_xport() architectureMartin Braun2017-12-221-110/+283
| | | | | This commit combines code from various branches to finally enable both UDP and Liberio transports.
* mpm: n310: Load Liberio dispatcherMartin Braun2017-12-221-9/+39
| | | | | Note: The dispatcher is not yet used at this point. However, it will check the existence of certain devices.
* fpga load: add N310 update FPGA functionBrent Stapleton2017-12-221-0/+14
| | | | | -update_fpga loads the FPGA image from the base class's update_component function -checks if FPGA image is a bit or bin file, and converts to Zynq-compatible binfile if necessary
* fpga load: add update_component function to MPMBrent Stapleton2017-12-221-0/+27
| | | | | | | | -update_component takes a byte array containing the data to be written, and a dictionary containing the metadata of the component to be updated -The metadata must contain 'id' and 'filename' -The metadata may contain an md5 hash ('md5')
* mpm: Minor refactoring of PeriphManagerBase attributesMartin Braun2017-12-221-0/+1
|
* mpm: n310: Enable read/write of user EEPROM dataMartin Braun2017-12-221-0/+67
| | | | | | This exposes two new API calls to read and write arbitrary data to the device's EEPROM. Please keep in mind that EEPROMs have limited write cycles!
* n3xx: enable 1G clock with gpio settings.Ryan Marlow2017-12-221-0/+17
|
* mpm: n3xx: Add GPS locked sensorTrung N Tran2017-12-221-0/+13
|
* mpm: n310: Add mboard EEPROM supportMartin Braun2017-12-221-0/+15
| | | | | This is a specific override for the N310. It returns all the default device info as a dict.
* mpm/n310: Moved the mboard ref_locked sensor into MPMMartin Braun2017-12-221-0/+28
| | | | | | | | An N310 device will query all its dboards for ref lock status and return a Boolean combination as a motherboard sensors (note: the N310 does not actually have a ref_locked sensor on the motherboard, this is mostly for backwards-compat with UHD applications that expect a motherboard ref lock sensor).
* mpm: add n310 motherboard revD supportTrung N Tran2017-12-221-37/+78
| | | | | | | | | | This will enable both RevC and RevD from an MPM perspective. The revision read back from the EEPROM is used to enable the code for either rev. The impact on the code is limited to the port expander GPIOs. Port expander objects are instantiated in both the N310 MPM module as well as the n3xx_bist executable.
* mpm: Added max rev check overridableMartin Braun2017-12-221-0/+1
| | | | | | When reading revision numbers from EEPROM, we now have an easy way of checking of our version MPM is sufficient to run on the current device. N310 implicitly makes use of this starting with this commit.
* mpm: n3xx: Don't set time and clock source without dboardsMartin Braun2017-12-221-6/+14
| | | | | | | | When there are no daughterboards present, clock and time source are meaningless. It's also possible that corresponding FPGA images are not loaded, in which case trying to set those could crash the system. Unless daughterboards are actually present, these settings won't get applied any more.
* mpm: n3xx: Fix TCA GPIO read functionMartin Braun2017-12-221-1/+1
| | | | Used to always return None, now returns the actual pin value.
* mpm: n3xx: Change default state for TCA GPIOsMartin Braun2017-12-221-1/+3
| | | | | | 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).
* n310: enable CLK-MGT156MHz at init n310 callTrung N Tran2017-12-221-1/+1
|
* n310/eiscat: Removed 20 MHz as a valid ref clock frequencyMartin Braun2017-12-221-0/+5
|
* n3xx mpm: Refactored peripheral init codeMartin Braun2017-12-221-15/+24
|
* n3xx mpm: Enable more subcomponents through API callsMartin Braun2017-12-221-5/+44
|
* n3xx mpm: Set call for TCA6424 pins gets value argMartin Braun2017-12-221-4/+3
|
* n310: gpio bistTrung N Tran2017-12-221-1/+69
|
* n3xx: enable all pins on tca6424Trung N Tran2017-12-221-1/+2
|
* mpm/n310: Moved eth dispatcher setup into __init__Martin Braun2017-12-221-8/+7
|
* n3xx: added args for ethernet crossover pathsugandhagupta2017-12-221-0/+5
|