diff options
author | Sugandha Gupta <sugandha.gupta@ettus.com> | 2019-01-25 17:36:26 -0800 |
---|---|---|
committer | michael-west <michael.west@ettus.com> | 2019-05-21 17:20:42 -0700 |
commit | 2960e559515348dce83bfdbdd6ef39e551235045 (patch) | |
tree | 1a603f4c28f23c5bccd298b9be57b92a5991defc /host/lib/usrp/mpmd | |
parent | 41f732a4c8bb9df116a01958f0914708475097df (diff) | |
download | uhd-2960e559515348dce83bfdbdd6ef39e551235045.tar.gz uhd-2960e559515348dce83bfdbdd6ef39e551235045.tar.bz2 uhd-2960e559515348dce83bfdbdd6ef39e551235045.zip |
device3: Constraint send/recv_frame_size based on down/upstream MTU
We need to properly contraint the send/recv_frame_size based on the
minimum MTU of all the down/upstream blocks. This fixes the issue with
E310 tx/rx streaming as it has smaller MTU sizes than the other usrps.
Diffstat (limited to 'host/lib/usrp/mpmd')
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_impl.cpp | 4 | ||||
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_impl.hpp | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_impl.cpp b/host/lib/usrp/mpmd/mpmd_impl.cpp index b8ce6cabd..2f3584498 100644 --- a/host/lib/usrp/mpmd/mpmd_impl.cpp +++ b/host/lib/usrp/mpmd/mpmd_impl.cpp @@ -348,6 +348,10 @@ void mpmd_impl::setup_rpc_blocks( } } +size_t mpmd_impl::get_mtu(const size_t mb_index, const uhd::direction_t dir) { + return _mb[mb_index]->get_mtu(dir); +} + /***************************************************************************** * Factory & Registry ****************************************************************************/ diff --git a/host/lib/usrp/mpmd/mpmd_impl.hpp b/host/lib/usrp/mpmd/mpmd_impl.hpp index f74627afa..bdb6bd691 100644 --- a/host/lib/usrp/mpmd/mpmd_impl.hpp +++ b/host/lib/usrp/mpmd/mpmd_impl.hpp @@ -246,6 +246,9 @@ public: uhd::usrp::device3_impl::xport_type_t, const uhd::device_addr_t&); + //! get mtu + size_t get_mtu(const size_t, const uhd::direction_t); + private: uhd::device_addr_t get_rx_hints(size_t mb_index); uhd::device_addr_t get_tx_hints(size_t mb_index); |