diff options
author | Michael West <michael.west@ettus.com> | 2019-02-13 16:29:18 -0800 |
---|---|---|
committer | michael-west <michael.west@ettus.com> | 2019-02-18 11:25:15 -0800 |
commit | f9f7b34d546a79bec55cf9d0e48ef3876f0f67d7 (patch) | |
tree | 72dc0e92160ef9d7a3e49177a66f4fff0f2eb214 /host/lib/rfnoc/source_block_ctrl_base.cpp | |
parent | 8b404ade3eb376ef0619a039396823f7e2e462e0 (diff) | |
download | uhd-f9f7b34d546a79bec55cf9d0e48ef3876f0f67d7.tar.gz uhd-f9f7b34d546a79bec55cf9d0e48ef3876f0f67d7.tar.bz2 uhd-f9f7b34d546a79bec55cf9d0e48ef3876f0f67d7.zip |
RFNoC: Disable FC ACK packets for lossless links
FC ACK packets are unnecessary on lossless links and degrade overall
performance. This change disables those packets on all lossless links.
Signed-off-by: Michael West <michael.west@ettus.com>
Diffstat (limited to 'host/lib/rfnoc/source_block_ctrl_base.cpp')
-rw-r--r-- | host/lib/rfnoc/source_block_ctrl_base.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/host/lib/rfnoc/source_block_ctrl_base.cpp b/host/lib/rfnoc/source_block_ctrl_base.cpp index 6c41fae14..656ab26af 100644 --- a/host/lib/rfnoc/source_block_ctrl_base.cpp +++ b/host/lib/rfnoc/source_block_ctrl_base.cpp @@ -86,6 +86,7 @@ void source_block_ctrl_base::set_destination( } void source_block_ctrl_base::configure_flow_control_out(const bool enable_fc_output, + const bool lossless_link, const size_t buf_size_bytes, const size_t pkt_limit, const size_t block_port, @@ -124,8 +125,9 @@ void source_block_ctrl_base::configure_flow_control_out(const bool enable_fc_out // count based flow control const bool enable_byte_fc = (buf_size_bytes != 0); const bool enable_pkt_cnt_fc = (pkt_limit != 0); - const uint32_t config = (enable_fc_output ? 1 : 0) | (enable_byte_fc << 1) - | (enable_pkt_cnt_fc << 2); + const uint32_t config = (enable_fc_output ? 1 : 0) | ((enable_byte_fc ? 1 : 0) << 1) + | ((enable_pkt_cnt_fc ? 1 : 0) << 2) + | ((lossless_link ? 1 : 0) << 3); // Resize the FC window. // Precondition: No data can be buffered upstream. |