summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrung Tran <trung.tran@ettus.com>2019-01-16 13:40:18 -0800
committerBrent Stapleton <brent.stapleton@ettus.com>2019-01-23 13:45:40 -0800
commit3c821adfedf859ffb689136eea2ac6fa6b48916a (patch)
tree49588c1f6e529d0b637d736a6db64b6725d40acf
parentmpm: Fix up Rhodium EEPROM handling for BfrfsEEPROM (diff)
downloaduhd-3c821adfedf859ffb689136eea2ac6fa6b48916a.tar.xz
uhd-3c821adfedf859ffb689136eea2ac6fa6b48916a.zip
mpmd_xport: liberio: using 4096 bytes frame size
Using a send_frame_size of 8192 locks up some devices while transmitting. The root cause of this is unknown, but the new value (4096) prevents this issue in most cases. Some device are still affected by the lock-up even after this change.
-rw-r--r--host/lib/usrp/mpmd/mpmd_xport_ctrl_liberio.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_xport_ctrl_liberio.cpp b/host/lib/usrp/mpmd/mpmd_xport_ctrl_liberio.cpp
index d2f36bba3..139683597 100644
--- a/host/lib/usrp/mpmd/mpmd_xport_ctrl_liberio.cpp
+++ b/host/lib/usrp/mpmd/mpmd_xport_ctrl_liberio.cpp
@@ -128,9 +128,13 @@ bool mpmd_xport_ctrl_liberio::is_valid(
return xport_info.at("type") == "liberio";
}
-size_t mpmd_xport_ctrl_liberio::get_mtu(const uhd::direction_t /* dir */
- ) const
+size_t mpmd_xport_ctrl_liberio::get_mtu(const uhd::direction_t dir) const
{
+ /* TODO: this is extremely hacky. We don't know yet what broke liberio.
+ * Putting a bandaid here to help TXing. Remove this as soon as possible!
+ */
+ if (dir == uhd::TX_DIRECTION)
+ return getpagesize();
return LIBERIO_PAGES_PER_BUF * getpagesize();
}