aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/e100
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2011-12-05 13:04:23 -0800
committerJosh Blum <josh@joshknows.com>2011-12-05 13:04:23 -0800
commit40c637bfb723be607800f67a3115aa1eee31f9d7 (patch)
tree212c41e164bb53f3468042f8fbf4569ce6009683 /host/lib/usrp/e100
parent07c9d41014e7e8003b2e642c0e6b7c3ac5ad6cfb (diff)
downloaduhd-40c637bfb723be607800f67a3115aa1eee31f9d7.tar.gz
uhd-40c637bfb723be607800f67a3115aa1eee31f9d7.tar.bz2
uhd-40c637bfb723be607800f67a3115aa1eee31f9d7.zip
uhd: work with stream clearing
dont clear when using the compat device API tx clear also resets expected seqnum tx clear on usrp2 resets flow control monitor
Diffstat (limited to 'host/lib/usrp/e100')
-rw-r--r--host/lib/usrp/e100/io_impl.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/host/lib/usrp/e100/io_impl.cpp b/host/lib/usrp/e100/io_impl.cpp
index 855fda0d7..dc090ad28 100644
--- a/host/lib/usrp/e100/io_impl.cpp
+++ b/host/lib/usrp/e100/io_impl.cpp
@@ -305,6 +305,7 @@ rx_streamer::sptr e100_impl::get_rx_stream(const uhd::stream_args_t &args_){
for (size_t chan_i = 0; chan_i < args.channels.size(); chan_i++){
const size_t dsp = args.channels[chan_i];
_rx_dsps[dsp]->set_nsamps_per_packet(spp); //seems to be a good place to set this
+ if (not args.args.has_key("noclear")) _rx_dsps[dsp]->clear();
_rx_dsps[dsp]->set_format(args.otw_format, sc8_scalar);
my_streamer->set_xport_chan_get_buff(chan_i, boost::bind(
&recv_packet_demuxer::get_recv_buff, _io_impl->demuxer, dsp, _1
@@ -362,7 +363,7 @@ tx_streamer::sptr e100_impl::get_tx_stream(const uhd::stream_args_t &args_){
for (size_t chan_i = 0; chan_i < args.channels.size(); chan_i++){
const size_t dsp = args.channels[chan_i];
UHD_ASSERT_THROW(dsp == 0); //always 0
- _tx_dsp->clear();
+ if (not args.args.has_key("noclear")) _tx_dsp->clear();
my_streamer->set_xport_chan_get_buff(chan_i, boost::bind(
&zero_copy_if::get_send_buff, _data_transport, _1
));