From 6af41376c18c62ca7bfe8cccdd6564922d3fdd6a Mon Sep 17 00:00:00 2001 From: Ashish Chaudhari Date: Wed, 20 Dec 2017 11:44:12 -0800 Subject: mpmd: Device discovery fixes and cleanup - 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 --- host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp') diff --git a/host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp b/host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp index de4b3bbba..0da080724 100644 --- a/host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp +++ b/host/lib/usrp/mpmd/mpmd_xport_ctrl_udp.cpp @@ -26,9 +26,13 @@ namespace { const uhd::device_addr_t& mb_args ) { // mb_args must always include addr - std::vector addrs{mb_args["addr"]}; - if (mb_args.has_key("second_addr")){ - addrs.push_back(mb_args["second_addr"]); + if (not mb_args.has_key(FIRST_ADDR_KEY)) { + throw uhd::runtime_error("The " + FIRST_ADDR_KEY + " key must be specified in " + "device args to create an Ethernet transport to an RFNoC block"); + } + std::vector addrs{mb_args[FIRST_ADDR_KEY]}; + if (mb_args.has_key(SECOND_ADDR_KEY)){ + addrs.push_back(mb_args[SECOND_ADDR_KEY]); } return addrs; } -- cgit v1.2.3