aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/x300
diff options
context:
space:
mode:
authorIan Buckley <github@ionconcepts.com>2015-09-03 15:55:05 -0700
committerMartin Braun <martin.braun@ettus.com>2015-09-03 15:59:37 -0700
commit43092f326f91ebb8b9fb06ab7b26de0171b745b4 (patch)
tree48306258688aca74231df0a0986199baf21e29fb /host/lib/usrp/x300
parentfa8667bf395b563b70bea0492b5deced3d85f968 (diff)
downloaduhd-43092f326f91ebb8b9fb06ab7b26de0171b745b4.tar.gz
uhd-43092f326f91ebb8b9fb06ab7b26de0171b745b4.tar.bz2
uhd-43092f326f91ebb8b9fb06ab7b26de0171b745b4.zip
cores: Corrected scaling_adjustment calculation
Compensate for headroom required to rotate a signal in the CORDIC. Fixes some CORDIC-related clipping issues, that reduced ENOB to 15 or 14.5 bits.
Diffstat (limited to 'host/lib/usrp/x300')
-rw-r--r--host/lib/usrp/x300/x300_impl.cpp8
-rw-r--r--host/lib/usrp/x300/x300_impl.hpp2
2 files changed, 10 insertions, 0 deletions
diff --git a/host/lib/usrp/x300/x300_impl.cpp b/host/lib/usrp/x300/x300_impl.cpp
index f57556a8b..1e424414e 100644
--- a/host/lib/usrp/x300/x300_impl.cpp
+++ b/host/lib/usrp/x300/x300_impl.cpp
@@ -1334,6 +1334,14 @@ void x300_impl::register_loopback_self_test(wb_iface::sptr iface)
UHD_MSG(status) << ((test_fail)? " fail" : "pass") << std::endl;
}
+void x300_impl::radio_loopback(wb_iface::sptr iface, const bool on)
+{
+ iface->poke32(radio::sr_addr(radio::LOOPBACK), (on ? 0x1 : 0x0));
+ UHD_MSG(status) << ((on)? "Radio Loopback On" : "Radio Loopback Off") << std::endl;
+}
+
+
+
/***********************************************************************
* clock and time control logic
**********************************************************************/
diff --git a/host/lib/usrp/x300/x300_impl.hpp b/host/lib/usrp/x300/x300_impl.hpp
index 78c497ad9..1630047af 100644
--- a/host/lib/usrp/x300/x300_impl.hpp
+++ b/host/lib/usrp/x300/x300_impl.hpp
@@ -250,6 +250,8 @@ private:
void register_loopback_self_test(uhd::wb_iface::sptr iface);
+ void radio_loopback(uhd::wb_iface::sptr iface, const bool on);
+
/*! \brief Initialize the radio component on a given slot.
*
* Call this function once per slot (A and B) and motherboard to initialize all the radio components.