aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/usrp2/mboard_impl.cpp
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2011-05-01 15:42:32 -0700
committerJosh Blum <josh@joshknows.com>2011-05-01 15:42:32 -0700
commite75919bc9e1cb1b5f8f69b5a5aabed9b3a1a53d9 (patch)
tree861b82a27b20e715aa81138baf26f4acd54f9895 /host/lib/usrp/usrp2/mboard_impl.cpp
parent11e856ebca352af1b0444aec6d57ea61c0b48037 (diff)
downloaduhd-e75919bc9e1cb1b5f8f69b5a5aabed9b3a1a53d9.tar.gz
uhd-e75919bc9e1cb1b5f8f69b5a5aabed9b3a1a53d9.tar.bz2
uhd-e75919bc9e1cb1b5f8f69b5a5aabed9b3a1a53d9.zip
usrp2: added the concept of device locking to usrp2/nseries devices
Each iface instance can lock itself to a particular device. When the device is locked, it cannot be discovered through find. Locking works by having a lock thread periodically update a register in the firmware that says when the device was last locked. The find routine can determine if a device is locked by checking the difference between the current time and this register.
Diffstat (limited to 'host/lib/usrp/usrp2/mboard_impl.cpp')
-rw-r--r--host/lib/usrp/usrp2/mboard_impl.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/host/lib/usrp/usrp2/mboard_impl.cpp b/host/lib/usrp/usrp2/mboard_impl.cpp
index ae098dba6..7705037dd 100644
--- a/host/lib/usrp/usrp2/mboard_impl.cpp
+++ b/host/lib/usrp/usrp2/mboard_impl.cpp
@@ -80,6 +80,9 @@ usrp2_mboard_impl::usrp2_mboard_impl(
) % int(USRP2_FPGA_COMPAT_NUM) % fpga_compat_num));
}
+ //lock the device/motherboard to this process
+ _iface->lock_device(true);
+
//construct transports for dsp and async errors
std::cout << "Making transport for DSP0..." << std::endl;
device.dsp_xports.push_back(udp_zero_copy::make(