aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/python/usrp_mpm/periph_manager
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-222-5/+13
| | | | | | | 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: Fix linter warningsMartin Braun2017-12-221-1/+5
| | | | | | - Magnesium: Bad formatting in DRP setup - PeriphManagerBase: Import order - dtoverlay: Missed default value for param
* mpm: n310: Set default clock source to 'internal'Martin Braun2017-12-221-1/+1
|
* mpm: periph_manager: Clarify request/commit protocolMartin Braun2017-12-221-5/+8
|
* 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: xports: Amend protocol for request/commit xport, add allocationMartin Braun2017-12-221-0/+11
| | | | 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-225-65/+10
| | | | 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-222-29/+33
| | | | | | | 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-226-74/+15
| | | | | | | | - 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-222-233/+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-222-1/+23
| | | | | | | | | | 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-222-17/+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-222-40/+46
| | | | | | | - 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: mg: Optionally parallelize init calls to dboardMartin Braun2017-12-221-3/+19
| | | | | | Default is to run in parallel. serialize_init=1 will run them serially. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
* mpm: n310: Made n310.__init__() more exception-safeMartin Braun2017-12-221-1/+15
|
* mpm: Made PeriphManagerBase.__init__ more exception-safeMartin Braun2017-12-221-4/+13
|
* 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-222-130/+351
| | | | | This commit combines code from various branches to finally enable both UDP and Liberio transports.
* mpm: Lower logging level for PeriphManagerBase.deinit()Martin Braun2017-12-221-2/+2
|
* 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.
* mpm: Cache connection type in PeriphManagerBaseMartin Braun2017-12-221-0/+13
| | | | | | Now, when claiming a device, the connection type will be stored as a string in PeriphManagerBase. This way we can read out the current connection type even when not currently inside an RPC call.
* mpm: Remove leading _ from _get_device_info()Martin Braun2017-12-221-1/+2
| | | | Use @norpc instead. This fixes some linting issues.
* mpm: Make list_updateable_components return somethingMartin Braun2017-12-221-2/+1
|
* 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-222-0/+95
| | | | | | | | -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-222-8/+3
|
* 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: Provide default dboard EEPROM getter/settersMartin Braun2017-12-221-0/+28
| | | | | The setter will throw an exception though. It is supposed to be overriden by device-specific classes.
* 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: Add mboard EEPROM supportMartin Braun2017-12-221-1/+25
| | | | | | MPMD binds a property for the mboard EEPROM to the appropriate RPC calls. PeriphManager now provides default implementations for an mboard EEPROM.
* 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: Added sensor APIMartin Braun2017-12-221-0/+38
| | | | | | | | - 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
* 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-222-5/+30
| | | | | | 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.