aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/usrp2/usrp2_impl.hpp
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2010-03-01 16:13:30 -0800
committerJosh Blum <josh@joshknows.com>2010-03-01 16:13:30 -0800
commit451067295399e357d73c9bfdeef5f2ad040e0243 (patch)
tree02681d419362edd334e842e30416e1d353d74643 /host/lib/usrp/usrp2/usrp2_impl.hpp
parent6e8473e6eef84875e2c3babb35732f8c3b2a0247 (diff)
downloaduhd-451067295399e357d73c9bfdeef5f2ad040e0243.tar.gz
uhd-451067295399e357d73c9bfdeef5f2ad040e0243.tar.bz2
uhd-451067295399e357d73c9bfdeef5f2ad040e0243.zip
Send the number of samples per datagram over the control.
Worked on the io impl for usrp2 (added loop unrolls and 32 bit buffers). Added some vrt rx constants to the fw common used by host and fw. Removed the MTU prop and added a general device prop for num samples.
Diffstat (limited to 'host/lib/usrp/usrp2/usrp2_impl.hpp')
-rw-r--r--host/lib/usrp/usrp2/usrp2_impl.hpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/host/lib/usrp/usrp2/usrp2_impl.hpp b/host/lib/usrp/usrp2/usrp2_impl.hpp
index 47b01d1b1..43f32c6e6 100644
--- a/host/lib/usrp/usrp2/usrp2_impl.hpp
+++ b/host/lib/usrp/usrp2/usrp2_impl.hpp
@@ -105,10 +105,15 @@ private:
//the raw io interface (samples are in the usrp2 native format)
size_t send_raw(const boost::asio::const_buffer &, const uhd::metadata_t &);
size_t recv_raw(const boost::asio::mutable_buffer &, uhd::metadata_t &);
- uhd::dict<uint32_t, size_t> _stream_id_to_packet_seq;
- static const size_t _mtu = 1500;
- uint8_t _spillover_mem[_mtu];
+ uhd::dict<uint32_t, size_t> _tx_stream_id_to_packet_seq;
+ uhd::dict<uint32_t, size_t> _rx_stream_id_to_packet_seq;
+ static const size_t _mtu = 1500; //FIXME we have no idea
+ static const size_t _max_samples_per_packet = _mtu/sizeof(uint32_t);
+ uint32_t _tmp_send_mem[_mtu/sizeof(uint32_t)];
+ uint32_t _tmp_recv_mem[_mtu/sizeof(uint32_t)];
+ uint32_t _spillover_mem[_mtu/sizeof(uint32_t)];
boost::asio::mutable_buffer _splillover_buff;
+ void io_init(void);
//udp transports for control and data
uhd::transport::udp::sptr _ctrl_transport;