diff options
author | Andrew Lynch <andrew.lynch@ni.com> | 2020-06-10 17:15:46 -0500 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2020-06-26 14:34:13 -0500 |
commit | 5c1771cc68edca442d870611ef8d9662b5d00d8b (patch) | |
tree | 33c4c2dbf82259a4bc6ce4bd11f40e2384260d32 /host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp | |
parent | 9318323b769200ee328456b0ef92ea19c1b96b6e (diff) | |
download | uhd-5c1771cc68edca442d870611ef8d9662b5d00d8b.tar.gz uhd-5c1771cc68edca442d870611ef8d9662b5d00d8b.tar.bz2 uhd-5c1771cc68edca442d870611ef8d9662b5d00d8b.zip |
CHDR: support multiple CHDR widths
Support management payloads on busses over 64 bits
Automatically set CHDR width for mpmd_link_if_ctrl_udp
Diffstat (limited to 'host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp')
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp b/host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp index 4b36e7ba4..930f5e465 100644 --- a/host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp +++ b/host/lib/usrp/mpmd/mpmd_link_if_mgr.cpp @@ -36,9 +36,11 @@ public: /************************************************************************** * API (see mpmd_link_if_mgr.hpp) *************************************************************************/ - bool connect(const std::string& link_type, const xport_info_list_t& xport_info) + bool connect(const std::string& link_type, + const xport_info_list_t& xport_info, + const uhd::rfnoc::chdr_w_t chdr_w) { - auto link_if_ctrl = make_link_if_ctrl(link_type, xport_info); + auto link_if_ctrl = make_link_if_ctrl(link_type, xport_info, chdr_w); if (!link_if_ctrl) { UHD_LOG_WARNING( "MPMD::XPORT", "Unable to create xport ctrl for link type " << link_type); @@ -89,8 +91,9 @@ private: /************************************************************************** * Private methods / helpers *************************************************************************/ - mpmd_link_if_ctrl_base::uptr make_link_if_ctrl( - const std::string& link_type, const xport_info_list_t& xport_info) + mpmd_link_if_ctrl_base::uptr make_link_if_ctrl(const std::string& link_type, + const xport_info_list_t& xport_info, + const uhd::rfnoc::chdr_w_t chdr_w) { // Here, we hard-code the list of available transport types if (link_type == "udp") { @@ -100,7 +103,7 @@ private: // xport_info); //} #endif - return std::make_unique<mpmd_link_if_ctrl_udp>(_mb_args, xport_info); + return std::make_unique<mpmd_link_if_ctrl_udp>(_mb_args, xport_info, chdr_w); #ifdef HAVE_LIBERIO } else if (link_type == "liberio") { return std::make_unique<mpmd_link_if_ctrl_liberio>(_mb_args, xport_info); |