aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp
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_init.cpp
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_init.cpp')
-rw-r--r--host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp b/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp
index 600758efa..28e5eb3a6 100644
--- a/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp
+++ b/host/lib/usrp/dboard/rhodium/rhodium_radio_ctrl_init.cpp
@@ -191,14 +191,22 @@ void rhodium_radio_ctrl_impl::_init_peripherals()
regs::rb_addr(regs::RB_DB_GPIO)
);
_gpio->set_atr_mode(
- usrp::gpio_atr::MODE_GPIO, // Disable ATR mode
- usrp::gpio_atr::gpio_atr_3000::MASK_SET_ALL
+ usrp::gpio_atr::MODE_ATR, // Enable ATR mode for Rhodium bits
+ RHODIUM_GPIO_MASK
+ );
+ _gpio->set_atr_mode(
+ usrp::gpio_atr::MODE_GPIO, // Disable ATR mode for unused bits
+ ~RHODIUM_GPIO_MASK
);
_gpio->set_gpio_ddr(
usrp::gpio_atr::DDR_OUTPUT, // Make all GPIOs outputs
usrp::gpio_atr::gpio_atr_3000::MASK_SET_ALL
);
+ UHD_LOG_TRACE(unique_id(), "Set initial ATR values...");
+ _update_atr(RHODIUM_DEFAULT_TX_ANTENNA, TX_DIRECTION);
+ _update_atr(RHODIUM_DEFAULT_RX_ANTENNA, RX_DIRECTION);
+
// Updating the TX frequency path may include an update to SW10, which is
// GPIO controlled, so this must follow CPLD and GPIO initialization
UHD_LOG_TRACE(unique_id(), "Writing initial switch values...");