diff options
author | Ashish Chaudhari <ashish@ettus.com> | 2016-03-09 17:57:54 -0800 |
---|---|---|
committer | Ashish Chaudhari <ashish@ettus.com> | 2016-03-21 17:46:23 -0700 |
commit | 721f2dd9c1b29b219c9e036f856e7f64f495728c (patch) | |
tree | 503040b695c547f5b666079b37fd305795a5d400 /host/lib/usrp/x300 | |
parent | 7fad896c07fbdda4cf112e9e4999a5ab8f5484a5 (diff) | |
download | uhd-721f2dd9c1b29b219c9e036f856e7f64f495728c.tar.gz uhd-721f2dd9c1b29b219c9e036f856e7f64f495728c.tar.bz2 uhd-721f2dd9c1b29b219c9e036f856e7f64f495728c.zip |
dboard_iface: Added method to configure front connection and settings
Diffstat (limited to 'host/lib/usrp/x300')
-rw-r--r-- | host/lib/usrp/x300/x300_dboard_iface.cpp | 10 | ||||
-rw-r--r-- | host/lib/usrp/x300/x300_impl.cpp | 1 | ||||
-rw-r--r-- | host/lib/usrp/x300/x300_impl.hpp | 1 |
3 files changed, 12 insertions, 0 deletions
diff --git a/host/lib/usrp/x300/x300_dboard_iface.cpp b/host/lib/usrp/x300/x300_dboard_iface.cpp index ef55368c8..884848624 100644 --- a/host/lib/usrp/x300/x300_dboard_iface.cpp +++ b/host/lib/usrp/x300/x300_dboard_iface.cpp @@ -80,6 +80,7 @@ public: boost::uint32_t data, size_t num_bits ); + void set_fe_connection(unit_t unit, const fe_connection_t& fe_conn); const x300_dboard_iface_config_t _config; uhd::dict<unit_t, ad5623_regs_t> _dac_regs; @@ -369,3 +370,12 @@ void x300_dboard_iface::set_command_time(const uhd::time_spec_t& t) { _config.cmd_time_ctrl->set_time(t); } + +void x300_dboard_iface::set_fe_connection(unit_t unit, const fe_connection_t& fe_conn) +{ + if (unit == UNIT_RX) { + _config.rx_dsp->set_mux(fe_conn); + } else { + throw uhd::not_implemented_error("frontend connection not configurable for TX"); + } +} diff --git a/host/lib/usrp/x300/x300_impl.cpp b/host/lib/usrp/x300/x300_impl.cpp index 80953ac20..4f49f7e73 100644 --- a/host/lib/usrp/x300/x300_impl.cpp +++ b/host/lib/usrp/x300/x300_impl.cpp @@ -1072,6 +1072,7 @@ void x300_impl::setup_radio(const size_t mb_i, const std::string &slot_name, con db_config.tx_spi_slaveno = DB_TX_SEN; db_config.i2c = mb.zpu_i2c; db_config.clock = mb.clock; + db_config.rx_dsp = mb.radio_perifs[radio_index].ddc; db_config.which_rx_clk = (slot_name == "A")? X300_CLOCK_WHICH_DB0_RX : X300_CLOCK_WHICH_DB1_RX; db_config.which_tx_clk = (slot_name == "A")? X300_CLOCK_WHICH_DB0_TX : X300_CLOCK_WHICH_DB1_TX; db_config.dboard_slot = (slot_name == "A")? 0 : 1; diff --git a/host/lib/usrp/x300/x300_impl.hpp b/host/lib/usrp/x300/x300_impl.hpp index 6ebea0161..dd94708b7 100644 --- a/host/lib/usrp/x300/x300_impl.hpp +++ b/host/lib/usrp/x300/x300_impl.hpp @@ -134,6 +134,7 @@ struct x300_dboard_iface_config_t size_t tx_spi_slaveno; i2c_core_100_wb32::sptr i2c; x300_clock_ctrl::sptr clock; + rx_dsp_core_3000::sptr rx_dsp; x300_clock_which_t which_rx_clk; x300_clock_which_t which_tx_clk; boost::uint8_t dboard_slot; |