aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/mpmd
Commit message (Collapse)AuthorAgeFilesLines
...
* mpmd: Add latency measurement functionalityMartin Braun2018-01-041-1/+43
| | | | | | | | | | By adding measure_rpc_latency, mpmd_impl will run a ping command in a loop at initialization, and estimate average and maximum RPC command latency. Note that the ping() RPC call only does an internal logging call and returns its argument, so it is a very coarse approximation to how fast RPC latency is. Reviewed-by: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* mpmd: Fix fake results returned by mpmd_findAshish Chaudhari2017-12-281-1/+3
| | | | | | | | - For non-MPM Ethernet devices, mpmd_find would return a fake malformed discovery result which would accidentally trigger an mpmd_impl::make resulting in unexpected errors - Fixed mpmd_find to return an empty device_addrs_t object if no MPM devices are found
* Move all headers to SPDX format, harmonize license headersMartin Braun2017-12-221-13/+2
|
* mpmd: liberio: Factor out constants into top of fileMartin Braun2017-12-221-17/+29
|
* mpmd: liberio: Apply MTU of 2 page sizesMartin Braun2017-12-221-3/+4
|
* mpmd: Optionally parallelize all calls to setup_rpc_blocksMartin Braun2017-12-222-14/+39
| | | | Default is to not serialize inits.
* mpmd: Temporarily disable setting of clock and time sourceMartin Braun2017-12-221-2/+24
| | | | | | Currently, calling these APIs could potentially put the device into bad state. This will disable the APIs from UHD side and replace them with a warning if the user's setting did not take effect.
* mpmd: Expose get_mtu() API to mpmd_mboard_impl and to prop treeMartin Braun2017-12-225-12/+50
|
* mpmd: udp: Apply MTU to socket defaultsMartin Braun2017-12-221-8/+15
|
* n310: Move SID framing all the way to n310.pyMartin Braun2017-12-223-6/+1
| | | | | | | 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>
* mpmd: Add get_mtu() API and MTU discovery for UDP transportsMartin Braun2017-12-225-0/+143
| | | | | | | | | The mpmd_xport_mgr classes can now return their own MTU. The UDP xport manager is a special case, it doesn't actually know its MTU, and thus runs an MTU discovery, using the MPM-ECHO command to discover MTU by sending variable-size packets as a probing mechanism. Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpmd: Device discovery fixes and cleanupAshish Chaudhari2017-12-224-32/+38
| | | | | | | | | - Fixed issue where the "addr" device args was not honored - Results returned by find only enumerate mgmt_addrs - Explicitly require addr to be specified for RFNoC comms - Cleaned up constants for mgmt_addr, addr and second_addr Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mpmd: Implement better xport selection algorithmMartin Braun2017-12-221-8/+22
| | | | Reviewed-by: Trung Tran <trung.tran@ettus.com>
* mpmd: Refactor MPM transport architecture, use managersMartin Braun2017-12-2212-404/+843
| | | | | | | | | | | | | | This splits up the transport code in mpmd_impl across multiple classes to properly leverage the request_xport/commit_xport API in MPM. Different types of transport (UDP, liberio) use their own distinct classes, which are generated dynamically on request. This is a true refactoring despite the large amount of changes; there are no functional differences. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com> Reviewed-By: Trung Tran <trung.tran@ettus.com> Reviewed-By: Ashish Chaudhari <ashish.chaudhari@ettus.com>
* mpm: mpmd: Add MPM compat number checkBrent Stapleton2017-12-221-0/+27
| | | | Reviewed-by: Martin Braun <martin.braun@ettus.com>
* mpmd: Allow to connect via addr or mgmt_addrMartin Braun2017-12-221-51/+103
| | | | Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
* types: Change eeprom_map_to to uint8_t vectorsMartin Braun2017-12-221-1/+4
| | | | | | | mpmd_impl was already using this type, fixed conversion from std::string to std::vector<uint8_t> there too. Reviewed-By: Brent Stapleton <brent.stapleton@ettus.com>
* mpmd: More gracefully quite the reclaim loop on failureMartin Braun2017-12-221-1/+6
|
* fpga load: Atomic updating of multiple componentsBrent Stapleton2017-12-222-57/+107
| | | | | | | - 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.
* mpmd: Bump init timeout to 120 seconds (sic)Martin Braun2017-12-221-1/+1
|
* mpm: added additional filtering to mpm find routineBrent Stapleton2017-12-221-1/+13
| | | | | | mpm_find now filters discovered devices using (if provided in args) name, serial, type, and product. This method follows the same logic as the x300 find routine.
* mpm/mpmd: Move to request_xport()/commit_xport() architectureMartin Braun2017-12-224-120/+342
| | | | | This commit combines code from various branches to finally enable both UDP and Liberio transports.
* fpga load: mpmd property tree now uses the MPM list_updateable_componentsBrent Stapleton2017-12-221-2/+4
| | | | Dynamically generates property tree by querying MPM device for a list of updateable components.
* mpmd: Bump initialization timeout to 45 secondsMartin Braun2017-12-221-1/+1
|
* mpmd: Use the get_last_error feature from the RPC clientMartin Braun2017-12-222-2/+6
| | | | | The RPC client will now query the MPM server for details when an error occured.
* fpga load: adding MPMD image loader functionBrent Stapleton2017-12-222-0/+107
| | | | uhd_image_loader now supports type=n310, and loads the FPGA provided in the arguments.
* fpga load: adding updateable components to mpmd property treeBrent Stapleton2017-12-221-0/+38
| | | | The FPGA image, and other components, can now be set from the property tree. The registered function expects a component_file_t, which combines the data file and metadata dictionary.
* mpmd: added support for the skip_init key in the device argsBrent Stapleton2017-12-222-16/+30
| | | | Adding skip_init to the device args makes it so rfnoc blocks, etc. are not initialized.
* mpm: Add mboard EEPROM supportMartin Braun2017-12-221-2/+23
| | | | | | 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-8/+0
| | | | | | | | 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/+30
| | | | | | | | - 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
* mg: General fixesMark Meserve2017-12-221-7/+0
| | | | | - Make DB probe-able - Add RPC client
* mpmd: Added time_sync procedureMartin Braun2017-12-221-3/+73
|
* mpm: Increased find timeoutMartin Braun2017-12-221-1/+6
|
* mpmd: property tree fixes for multi_usrp, set_freq fixessugandhagupta2017-12-221-0/+16
|
* mpmd: Fixed prop tree typo (mboard vs mboards)Martin Braun2017-12-221-1/+1
|
* mpm/mpmd: Dboard info is now stored in mboard info; refactored initializationMartin Braun2017-12-222-43/+90
|
* mpmd/mpm/n310: Added clock and time source APIsMartin Braun2017-12-222-2/+63
|
* mpm/mpmd: Call init() during UHD session init, not on hwd spawnMartin Braun2017-12-221-7/+32
|
* mpm/mpmd: Allow SID increment; more fixes for multi-usrp operationMartin Braun2017-12-223-32/+78
|
* mpmd: Explicitly unclaim devices on destructionMartin Braun2017-12-221-1/+7
|
* rpc: Changed API to request/notify for better distinction between the twoMartin Braun2017-12-222-9/+10
|
* mpm/mpmd: Further improvements on multi-device operationsMartin Braun2017-12-223-51/+168
| | | | | | | - 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
* mpmd: Refactored code to allow multi-device initializationMartin Braun2017-12-224-148/+247
|
* mpm/mpmd: Crossbar info is now polled instead of hardcodedMartin Braun2017-12-221-3/+17
| | | | - Extended base periph manager to provide crossbar info
* mpmd/rpc: Added a convenience wrapper for calling with a tokenMartin Braun2017-12-221-4/+9
|
* mpmd: Added preliminary support for passing RPC client to blocksMartin Braun2017-12-222-15/+52
|
* eiscat: Fixed missing antenna selection reg write for direct rxMartin Braun2017-12-221-0/+3
|
* Rename netd to mpmdMartin Braun2017-12-223-0/+497