From 08be477b88e50c84da3da95c74bcffaff287d70d Mon Sep 17 00:00:00 2001 From: Martin Braun Date: Tue, 19 Dec 2017 10:21:39 -0800 Subject: mpm: periph_manager: Clarify request/commit protocol --- mpm/python/usrp_mpm/periph_manager/base.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'mpm/python/usrp_mpm/periph_manager') diff --git a/mpm/python/usrp_mpm/periph_manager/base.py b/mpm/python/usrp_mpm/periph_manager/base.py index 4e9ccda1f..8fec893f7 100644 --- a/mpm/python/usrp_mpm/periph_manager/base.py +++ b/mpm/python/usrp_mpm/periph_manager/base.py @@ -613,7 +613,9 @@ class PeriphManagerBase(object): """ When setting up a CHDR connection, this is the first call to be made. This function will return a list of dictionaries, each - describing a way to open an CHDR connection. + describing a way to open an CHDR connection. The list of dictionaries + is sorted by preference, meaning that the caller should use the first + option, if possible. All transports requested are bidirectional. The callee must maintain a lock on the available CHDR xports. After @@ -641,10 +643,6 @@ class PeriphManagerBase(object): - type: Type of transport, e.g., "UDP", "liberio". - ipv4 (UDP only): IPv4 address to connect to. - port (UDP only): IP port to connect to. - - rx_mtu: In bytes, the max size RX packets can have (RX means going - from device to UHD) - - tx_mtu: In bytes, the max size TX packets can have (TX means going - from UHD to device) - allocation: This is an integer value which represents a score of how much bandwidth is used. Note: Currently does not have any unit, is just a counter. Higher numbers mean @@ -652,6 +650,11 @@ class PeriphManagerBase(object): example, committing an RX streamer would increase this value. This key is optional, MPM does not have to provide it. + If the allocation affects the preference, it will be + factored into the order of the results, meaning the + caller does not strictly have to check its value even if + the transport option with the smallest allocation is + preferred. Note: The dictionary may include other keys which should be ignored, or at the very least, kept intact. commit_xport() might be requiring -- cgit v1.2.3