Martin Braun
b12b9465ed
mpm/mpmd: Move to request_xport()/commit_xport() architecture
...
This commit combines code from various branches to finally enable both
UDP and Liberio transports.
2017-12-22 15:05:06 -08:00
Martin Braun
fb5e10a8e4
mpm: Cache connection type in PeriphManagerBase
...
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.
2017-12-22 15:05:05 -08:00
Martin Braun
16da5da375
mpm: Remove leading _ from _get_device_info()
...
Use @norpc instead. This fixes some linting issues.
2017-12-22 15:05:05 -08:00
Martin Braun
bcf3f28e15
mpm: Improve exception/error handling
...
- Any RPC call with uncaught exceptions will result in additional
logging on MPM side
- Adds get_last_error() API call
- get_last_error() is populated by various methods within rpc_server.py,
but also from every uncaught exception
2017-12-22 15:05:05 -08:00
Brent Stapleton
2196878439
mpm: server supports binary strings being sent across rpc
2017-12-22 15:04:03 -08:00
Martin Braun
d711ad4c93
mpm: RPC methods now tell us if they need a claim
...
On the RPC server side, we keep track of which methods require a claim
token. MPM shell uses this info to automatically add claim tokens when
required.
2017-12-22 15:04:00 -08:00
Martin Braun
8063697d68
mpm: Check rpc server has matching lock release/acquires
2017-12-22 15:04:00 -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
797b61a3fb
mpm: RPC servers own methods can no longer be overwritten
2017-12-22 15:03:59 -08:00
Martin Braun
4b9e07629d
mpm: Improved token checking in RPC server
2017-12-22 15:03:58 -08:00
Martin Braun
664f471baf
mpm: Addition Py3k fixes, all related to string/UTF-8/ascii differences
...
- Also fixed some error handling in various cases
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
5dcaffcd0b
mpm: RPC server now provides decorators for no token and no RPC
...
- Also token length is now variable, and 16 characters
2017-12-22 15:03:58 -08:00
Martin Braun
0a9632ad39
mpm: RPC server unitializes a device when claim is lost
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
1b27c16dd3
mpm: Updating ref clock frequency will propagate to dboard, changed slot indexing to numbers
2017-12-22 15:03:52 -08:00
Martin Braun
285f14392b
mpm: Moved over to new logging infrastructure
...
Also currently hardcodes some settings.
2017-12-22 15:03:45 -08:00
Andrej Rode
7f71111988
mpm: comment out functionality to make it work
...
- add uio udev find routine
- add debug prints
Signed-off-by: Andrej Rode <andrej.rode@ettus.com>
Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
2017-12-22 15:03:45 -08:00
Andrej Rode
6a12add156
mpm: mpm reorganization
2017-12-22 15:03:45 -08:00
Andrej Rode
8ac9014d5c
mpm: CMake cleanup, Python code enhancements
...
- Send user defined data in ping
- Improve rpc_shell, add mpm_debug.py, fix tracebacks in multiprocessing
2017-12-22 15:03:44 -08:00
Andrej Rode
ef6326a174
mpm: python refactoring
2017-12-22 15:03:44 -08:00
Martin Braun
1a4348038d
Initial commit for N3xx development.
...
- Creates mpm/ subdirectory
- First pass at hardware daemon/MPM
- New code for LMK04828, AD9371
- spidev integration
Contributions by:
Martin Braun <martin.braun@ettus.com>
Derek Kozel <derek.kozel@ettus.com>
Mark Meserve <mark.meserve@ni.com>
Andrej Rode <andrej.rode@ettus.com>
2017-12-22 15:03:44 -08:00