aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/rfnoc/radio_ctrl_impl.cpp
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2017-12-05 11:30:12 -0800
committerMartin Braun <martin.braun@ettus.com>2017-12-06 10:59:28 -0800
commitcc86cc5a6a713788cc58add7fd76486b8a8fa141 (patch)
treec796c703e333864229e66be6939443b77d1ed7c9 /host/lib/rfnoc/radio_ctrl_impl.cpp
parent77adcffe0689f120fee71854ec0f627a32991f79 (diff)
downloaduhd-cc86cc5a6a713788cc58add7fd76486b8a8fa141.tar.gz
uhd-cc86cc5a6a713788cc58add7fd76486b8a8fa141.tar.bz2
uhd-cc86cc5a6a713788cc58add7fd76486b8a8fa141.zip
rfnoc: Added TX LO APIs to radio_ctrl
Also added stubs in the default impl. Reviewed-By: Ashish Chaudhari <ashish@ettus.com> Reviewed-By: Derek Kozel <derek.kozel@ettus.com>
Diffstat (limited to 'host/lib/rfnoc/radio_ctrl_impl.cpp')
-rw-r--r--host/lib/rfnoc/radio_ctrl_impl.cpp71
1 files changed, 70 insertions, 1 deletions
diff --git a/host/lib/rfnoc/radio_ctrl_impl.cpp b/host/lib/rfnoc/radio_ctrl_impl.cpp
index 85ad6ed92..81bc0600b 100644
--- a/host/lib/rfnoc/radio_ctrl_impl.cpp
+++ b/host/lib/rfnoc/radio_ctrl_impl.cpp
@@ -244,7 +244,10 @@ double radio_ctrl_impl::get_rx_bandwidth(const size_t chan) /* const */
{
return _rx_bandwidth[chan];
}
-
+
+/******************************************************************************
+ * LO controls
+ *****************************************************************************/
std::vector<std::string> radio_ctrl_impl::get_rx_lo_names(const size_t /* chan */)
{
return std::vector<std::string>();
@@ -290,6 +293,72 @@ double radio_ctrl_impl::get_rx_lo_freq(const std::string & /* name */, const siz
return 0;
}
+std::vector<std::string> radio_ctrl_impl::get_tx_lo_names(
+ const size_t /* chan */
+) {
+ return std::vector<std::string>();
+}
+
+std::vector<std::string> radio_ctrl_impl::get_tx_lo_sources(
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ return std::vector<std::string>();
+}
+
+freq_range_t radio_ctrl_impl::get_tx_lo_freq_range(
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ return freq_range_t();
+}
+
+void radio_ctrl_impl::set_tx_lo_source(
+ const std::string & /* src */,
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ throw uhd::not_implemented_error("set_tx_lo_source is not supported on this radio");
+}
+
+const std::string radio_ctrl_impl::get_tx_lo_source(
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ return "internal";
+}
+
+void radio_ctrl_impl::set_tx_lo_export_enabled(
+ const bool /* enabled */,
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ throw uhd::not_implemented_error("set_tx_lo_export_enabled is not supported on this radio");
+}
+
+bool radio_ctrl_impl::get_tx_lo_export_enabled(
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ return false; // Not exporting non-existant LOs
+}
+
+double radio_ctrl_impl::set_tx_lo_freq(
+ const double /* freq */,
+ const std::string & /* name */,
+ const size_t /* chan */
+) {
+ throw uhd::not_implemented_error(
+ "set_tx_lo_freq is not supported on this radio");
+}
+
+double radio_ctrl_impl::get_tx_lo_freq(
+ const std::string & /* name */,
+ const size_t chan
+) {
+ return get_tx_frequency(chan);
+}
+
/***********************************************************************
* RX Streamer-related methods (from source_block_ctrl_base)
**********************************************************************/