diff options
author | Nick Foster <nick@nerdnetworks.org> | 2010-08-25 19:02:26 -0700 |
---|---|---|
committer | Nick Foster <nick@nerdnetworks.org> | 2010-08-25 19:02:26 -0700 |
commit | 60fc0f04a2b8499afa960653d793b782aef2bb6d (patch) | |
tree | be44de1534c628944c4599757657af774632a636 /host/lib/usrp/usrp2 | |
parent | 0019bb05437702a6727d3632c6efc6a600bb4aa2 (diff) | |
parent | 48ad3b734314bdec2128dacb20b09fd4cf1f5979 (diff) | |
download | uhd-60fc0f04a2b8499afa960653d793b782aef2bb6d.tar.gz uhd-60fc0f04a2b8499afa960653d793b782aef2bb6d.tar.bz2 uhd-60fc0f04a2b8499afa960653d793b782aef2bb6d.zip |
Merge branch 'master' of ettus.sourcerepo.com:ettus/uhdpriv into usrp2p
Conflicts:
host/include/uhd/usrp/simple_usrp.hpp
host/lib/usrp/simple_usrp.cpp
Diffstat (limited to 'host/lib/usrp/usrp2')
-rw-r--r-- | host/lib/usrp/usrp2/dboard_iface.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/host/lib/usrp/usrp2/dboard_iface.cpp b/host/lib/usrp/usrp2/dboard_iface.cpp index cff13292b..c79044bce 100644 --- a/host/lib/usrp/usrp2/dboard_iface.cpp +++ b/host/lib/usrp/usrp2/dboard_iface.cpp @@ -51,6 +51,7 @@ public: void set_atr_reg(unit_t, atr_reg_t, boost::uint16_t); void set_gpio_ddr(unit_t, boost::uint16_t); void write_gpio(unit_t, boost::uint16_t); + void set_gpio_debug(unit_t, int); boost::uint16_t read_gpio(unit_t); void write_i2c(boost::uint8_t, const byte_vector_t &); @@ -219,6 +220,25 @@ void usrp2_dboard_iface::set_atr_reg(unit_t unit, atr_reg_t atr, boost::uint16_t _iface->poke16(unit_to_atr_to_addr[unit][atr], value); } +void usrp2_dboard_iface::set_gpio_debug(unit_t unit, int which){ + this->set_gpio_ddr(unit, 0xffff); //all outputs + + //calculate the new selection mux setting + boost::uint32_t new_sels = 0x0; + int sel = (which == 0)? + U2_FLAG_GPIO_SEL_DEBUG_0: + U2_FLAG_GPIO_SEL_DEBUG_1; + for(size_t i = 0; i < 16; i++){ + new_sels |= sel << (i*2); + } + + //write the selection mux value to register + switch(unit){ + case UNIT_RX: _iface->poke32(_iface->regs.gpio_rx_sel, new_sels); return; + case UNIT_TX: _iface->poke32(_iface->regs.gpio_tx_sel, new_sels); return; + } +} + /*********************************************************************** * SPI **********************************************************************/ |