aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp
diff options
context:
space:
mode:
authorMark Meserve <mark.meserve@ni.com>2018-11-19 13:50:18 -0600
committerBrent Stapleton <bstapleton@g.hmc.edu>2018-11-29 11:13:56 -0800
commitc26de63a6481970cbc4c84b110df72e29c46ee3d (patch)
treebb0ae0db8ed1384154b46ff2372cb001bfff8f9f /host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp
parent2e85508a8719e2c1be548b70cf797365ce69a1f9 (diff)
downloaduhd-c26de63a6481970cbc4c84b110df72e29c46ee3d.tar.gz
uhd-c26de63a6481970cbc4c84b110df72e29c46ee3d.tar.bz2
uhd-c26de63a6481970cbc4c84b110df72e29c46ee3d.zip
rh: add support for atr frontend control
Diffstat (limited to 'host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp')
-rw-r--r--host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp b/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp
index af6322655..ac2311a24 100644
--- a/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp
+++ b/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_impl.hpp
@@ -56,13 +56,6 @@ public:
TX_BAND_7
};
- enum sw10_t {
- SW10_FROMTXLOWBAND = 0,
- SW10_FROMTXHIGHBAND = 1,
- SW10_ISOLATION = 2,
- SW10_TORX = 3
- };
-
/************************************************************************
* Structors
***********************************************************************/
@@ -217,6 +210,11 @@ private:
const direction_t dir
);
+ //! Configure ATR registers and update the cached antenna value from the
+ // new antenna value.
+ // ATR registers control SW10 and the frontend LEDs.
+ void _update_atr(const std::string& ant, const direction_t dir);
+
//! Map a frequency in Hz to an rx_band value. Will return
// rx_band::INVALID_BAND if the frequency is out of range.
static rx_band _map_freq_to_rx_band(const double freq);
@@ -285,8 +283,8 @@ private:
/**************************************************************************
* Private attributes
*************************************************************************/
- //! Locks access to setter APIs
- std::mutex _set_lock;
+ //! Locks access to the antenna cached values
+ std::mutex _ant_mutex;
//! Letter representation of the radio we're currently running
std::string _radio_slot;