aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/include/uhdlib/rfnoc/mb_iface.hpp
diff options
context:
space:
mode:
authorAlex Williams <alex.williams@ni.com>2019-08-05 21:08:44 -0700
committerMartin Braun <martin.braun@ettus.com>2019-11-26 11:49:36 -0800
commit0fc57b99b9163d919cc4a470b3065ab4cf1c947d (patch)
treec82d635e9d8f7d65aae3b5211392aa0029231583 /host/lib/include/uhdlib/rfnoc/mb_iface.hpp
parent88aac58651ed8f632137e39964b5dd580be6016a (diff)
downloaduhd-0fc57b99b9163d919cc4a470b3065ab4cf1c947d.tar.gz
uhd-0fc57b99b9163d919cc4a470b3065ab4cf1c947d.tar.bz2
uhd-0fc57b99b9163d919cc4a470b3065ab4cf1c947d.zip
rfnoc: Use link_stream_manager's mgmt_portal for all mgmt packets
Change data transports to use the mgmt_portal from the link_stream_manager. The initialization state of a device's EPIDs needs to be shared amongst all the SEP users. Otherwise, an RX transport may attempt to do a full reset of the SEP while TX is streaming (for example). TODO: The code contained here is not sufficient to handle multiple links that can access the same SEPs, as those would have different link_stream_managers, and thus, different mgmt_portal instances and views of the SEP state.
Diffstat (limited to 'host/lib/include/uhdlib/rfnoc/mb_iface.hpp')
-rw-r--r--host/lib/include/uhdlib/rfnoc/mb_iface.hpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/host/lib/include/uhdlib/rfnoc/mb_iface.hpp b/host/lib/include/uhdlib/rfnoc/mb_iface.hpp
index 840fcf709..1a06d44e2 100644
--- a/host/lib/include/uhdlib/rfnoc/mb_iface.hpp
+++ b/host/lib/include/uhdlib/rfnoc/mb_iface.hpp
@@ -99,7 +99,9 @@ public:
* \param xport_args Transport configuration args
* \return A CHDR RX data transport
*/
- virtual chdr_rx_data_xport::uptr make_rx_data_transport(const sep_addr_pair_t& addrs,
+ virtual chdr_rx_data_xport::uptr make_rx_data_transport(
+ mgmt::mgmt_portal& mgmt_portal,
+ const sep_addr_pair_t& addrs,
const sep_id_pair_t& epids,
const sw_buff_t pyld_buff_fmt,
const sw_buff_t mdata_buff_fmt,
@@ -116,7 +118,9 @@ public:
* \param xport_args Transport configuration args
* \return A CHDR TX data transport
*/
- virtual chdr_tx_data_xport::uptr make_tx_data_transport(const sep_addr_pair_t& addrs,
+ virtual chdr_tx_data_xport::uptr make_tx_data_transport(
+ mgmt::mgmt_portal& mgmt_portal,
+ const sep_addr_pair_t& addrs,
const sep_id_pair_t& epids,
const uhd::rfnoc::sw_buff_t pyld_buff_fmt,
const uhd::rfnoc::sw_buff_t mdata_buff_fmt,