aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/x300/x300_impl.cpp
diff options
context:
space:
mode:
authorSugandha Gupta <sugandha.gupta@ettus.com>2019-01-25 17:36:26 -0800
committermichael-west <michael.west@ettus.com>2019-05-21 17:20:42 -0700
commit2960e559515348dce83bfdbdd6ef39e551235045 (patch)
tree1a603f4c28f23c5bccd298b9be57b92a5991defc /host/lib/usrp/x300/x300_impl.cpp
parent41f732a4c8bb9df116a01958f0914708475097df (diff)
downloaduhd-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/x300/x300_impl.cpp')
-rw-r--r--host/lib/usrp/x300/x300_impl.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/host/lib/usrp/x300/x300_impl.cpp b/host/lib/usrp/x300/x300_impl.cpp
index 796d422ad..b9b4a06f9 100644
--- a/host/lib/usrp/x300/x300_impl.cpp
+++ b/host/lib/usrp/x300/x300_impl.cpp
@@ -1526,7 +1526,7 @@ uhd::both_xports_t x300_impl::make_transport(const uhd::sid_t& address,
// Increasing number of recv frames here because ctrl_iface uses it
// to determine how many control packets can be in flight before it
// must wait for an ACK
- default_buff_args.num_recv_frames =
+ default_buff_args.num_recv_frames =
uhd::rfnoc::CMD_FIFO_SIZE / uhd::rfnoc::MAX_CMD_PKT_SIZE;
} else if (xport_type == TX_DATA) {
size_t default_frame_size = conn.link_rate == x300::MAX_RATE_1GIGE
@@ -1993,6 +1993,11 @@ x300_impl::frame_size_t x300_impl::determine_max_frame_size(
return frame_size;
}
+size_t x300_impl::get_mtu(const size_t /*mb_index*/, const uhd::direction_t dir) {
+ return (dir == RX_DIRECTION) ? _max_frame_sizes.recv_frame_size :
+ _max_frame_sizes.send_frame_size;
+}
+
/***********************************************************************
* compat checks
**********************************************************************/