From b39358f490a24ffe4b8b29227736b8d2eb40b956 Mon Sep 17 00:00:00 2001 From: Derek Kozel Date: Tue, 10 Jul 2018 16:51:14 +0000 Subject: uhd: Expose DC Offset range via multi_usrp interface --- host/lib/usrp/multi_usrp.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'host/lib/usrp/multi_usrp.cpp') diff --git a/host/lib/usrp/multi_usrp.cpp b/host/lib/usrp/multi_usrp.cpp index 48da5023b..1d8a0fd7a 100644 --- a/host/lib/usrp/multi_usrp.cpp +++ b/host/lib/usrp/multi_usrp.cpp @@ -1541,6 +1541,15 @@ public: } } + meta_range_t get_rx_dc_offset_range(size_t chan) { + if (_tree->exists(rx_fe_root(chan) / "dc_offset" / "range")) { + return _tree->access(rx_fe_root(chan) / "dc_offset" / "range").get(); + } else { + UHD_LOGGER_WARNING("MULTI_USRP") << "This device does not support querying the RX DC offset range." ; + return meta_range_t(0, 0); + } + } + void set_rx_iq_balance(const bool enb, size_t chan){ if (chan != ALL_CHANS){ if (_tree->exists(rx_rf_fe_root(chan) / "iq_balance" / "enable")) { @@ -1912,6 +1921,15 @@ public: } } + meta_range_t get_tx_dc_offset_range(size_t chan) { + if (_tree->exists(tx_fe_root(chan) / "dc_offset" / "range")) { + return _tree->access(tx_fe_root(chan) / "dc_offset" / "range").get(); + } else { + UHD_LOGGER_WARNING("MULTI_USRP") << "This device does not support querying the TX DC offset range." ; + return meta_range_t(0, 0); + } + } + void set_tx_iq_balance(const std::complex &offset, size_t chan){ if (chan != ALL_CHANS){ if (_tree->exists(tx_fe_root(chan) / "iq_balance" / "value")) { -- cgit v1.2.3